diff --git a/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogControllerImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogControllerImpl.java
index 7bd289a6224af238d6ce79631535e2bd35408601..a17cdf732a6d84426e48ec18782f9cb2b7c07811 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogControllerImpl.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogControllerImpl.java
@@ -108,7 +108,7 @@ class BlogControllerImpl extends BaseControllerImpl
 			BlogInvitationResponseReceivedEvent b =
 					(BlogInvitationResponseReceivedEvent) e;
 			PrivateResponse<Blog> r = b.getMessageHeader();
-			if (r.getObject().getId().equals(groupId) && r.wasAccepted()) {
+			if (r.getNameable().getId().equals(groupId) && r.wasAccepted()) {
 				LOG.info("Blog invitation accepted");
 				onBlogInvitationAccepted(b.getContactId());
 			}
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/contact/ConversationItem.java b/briar-android/src/main/java/org/briarproject/briar/android/contact/ConversationItem.java
index 06afcf50bcd47c938a48d2b1df6dd915714840d1..f3c43032aff8328b62b6b6537c694611dcc58384 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/contact/ConversationItem.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/contact/ConversationItem.java
@@ -151,7 +151,7 @@ abstract class ConversationItem {
 			return new ConversationRequestItem(ir.getId(),
 					ir.getGroupId(), type, ir.getSessionId(), text,
 					ir.getMessage(), ir.getTimestamp(), ir.isRead(),
-					((Shareable) ir.getObject()).getId(), !ir.wasAnswered(),
+					((Shareable) ir.getNameable()).getId(), !ir.wasAnswered(),
 					ir.doesExist());
 		}
 	}
@@ -163,14 +163,14 @@ abstract class ConversationItem {
 			if (ir.wasAccepted()) {
 				text = ctx.getString(
 						R.string.introduction_response_accepted_sent,
-						ir.getObject().getName());
+						ir.getNameable().getName());
 				text += "\n\n" + ctx.getString(
 						R.string.introduction_response_accepted_sent_info,
-						ir.getObject().getName());
+						ir.getNameable().getName());
 			} else {
 				text = ctx.getString(
 						R.string.introduction_response_declined_sent,
-						ir.getObject().getName());
+						ir.getNameable().getName());
 			}
 			return new ConversationNoticeOutItem(ir.getId(), ir.getGroupId(),
 					text, null, ir.getTimestamp(), ir.isSent(), ir.isSeen());
@@ -179,7 +179,7 @@ abstract class ConversationItem {
 			if (ir.wasAccepted()) {
 				res = R.string.introduction_response_accepted_received;
 			} else {
-				if (ir.getObject().isIntroducer()) {
+				if (ir.getNameable().isIntroducer()) {
 					res = R.string.introduction_response_declined_received;
 				} else {
 					res =
@@ -187,7 +187,7 @@ abstract class ConversationItem {
 				}
 			}
 			String text =
-					ctx.getString(res, contactName, ir.getObject().getName());
+					ctx.getString(res, contactName, ir.getNameable().getName());
 			return new ConversationNoticeInItem(ir.getId(), ir.getGroupId(),
 					text, null, ir.getTimestamp(), ir.isRead());
 		}
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumControllerImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumControllerImpl.java
index 695d14f03ca8610dd3e0e5c2b2470ed82d7f7515..42362e78502affbe5b2c9d6e1568b9d0b5061506 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumControllerImpl.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumControllerImpl.java
@@ -85,7 +85,7 @@ class ForumControllerImpl extends
 			ForumInvitationResponseReceivedEvent f =
 					(ForumInvitationResponseReceivedEvent) e;
 			ForumInvitationResponse r = f.getMessageHeader();
-			if (r.getObject().getId().equals(getGroupId()) && r.wasAccepted()) {
+			if (r.getNameable().getId().equals(getGroupId()) && r.wasAccepted()) {
 				LOG.info("Forum invitation was accepted");
 				onForumInvitationAccepted(f.getContactId());
 			}
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupControllerImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupControllerImpl.java
index ba5f87c42a44469302a8f6c41897a596ef466b8d..5038634be09161986a0717232959c1b23d35c5ad 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupControllerImpl.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupControllerImpl.java
@@ -100,7 +100,7 @@ class GroupControllerImpl extends
 			GroupInvitationResponseReceivedEvent g =
 					(GroupInvitationResponseReceivedEvent) e;
 			GroupInvitationResponse r = g.getMessageHeader();
-			if (getGroupId().equals(r.getObject().getId()) && r.wasAccepted()) {
+			if (getGroupId().equals(r.getNameable().getId()) && r.wasAccepted()) {
 				listener.runOnUiThreadUnlessDestroyed(
 						() -> listener.onInvitationAccepted(g.getContactId()));
 			}
diff --git a/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateRequest.java b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateRequest.java
index 3fa5932425a4f15b7b11c53bfd76e0f30dedce58..36deb5ec150a1e61ac12638c7681150649c7f1fa 100644
--- a/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateRequest.java
+++ b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateRequest.java
@@ -10,21 +10,21 @@ import javax.annotation.concurrent.Immutable;
 
 @Immutable
 @NotNullByDefault
-public class PrivateRequest<O extends Nameable> extends PrivateMessageHeader {
+public class PrivateRequest<N extends Nameable> extends PrivateMessageHeader {
 
 	private final SessionId sessionId;
-	private final O object;
+	private final N nameable;
 	@Nullable
 	private final String message;
 	private final boolean answered, exists;
 
 	public PrivateRequest(MessageId messageId, GroupId groupId, long time,
 			boolean local, boolean sent, boolean seen, boolean read,
-			SessionId sessionId, O object, @Nullable String message,
+			SessionId sessionId, N nameable, @Nullable String message,
 			boolean answered, boolean exists) {
 		super(messageId, groupId, time, local, sent, seen, read);
 		this.sessionId = sessionId;
-		this.object = object;
+		this.nameable = nameable;
 		this.message = message;
 		this.answered = answered;
 		this.exists = exists;
@@ -34,12 +34,12 @@ public class PrivateRequest<O extends Nameable> extends PrivateMessageHeader {
 		return sessionId;
 	}
 
-	public O getObject() {
-		return object;
+	public N getNameable() {
+		return nameable;
 	}
 
 	public String getName() {
-		return object.getName();
+		return nameable.getName();
 	}
 
 	@Nullable
diff --git a/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateResponse.java b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateResponse.java
index bb7754789dc1fdd9f86a20733b0e597cb36cf7c3..60837e59cd315594ca0a80ec1410f335610e6bec 100644
--- a/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateResponse.java
+++ b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateResponse.java
@@ -9,19 +9,19 @@ import javax.annotation.concurrent.Immutable;
 
 @Immutable
 @NotNullByDefault
-public abstract class PrivateResponse<O extends Nameable>
+public abstract class PrivateResponse<N extends Nameable>
 		extends PrivateMessageHeader {
 
 	private final SessionId sessionId;
-	private final O object;
+	private final N nameable;
 	private final boolean accepted;
 
 	public PrivateResponse(MessageId id, GroupId groupId, long time,
 			boolean local, boolean sent, boolean seen, boolean read,
-			SessionId sessionId, O object, boolean accepted) {
+			SessionId sessionId, N nameable, boolean accepted) {
 		super(id, groupId, time, local, sent, seen, read);
 		this.sessionId = sessionId;
-		this.object = object;
+		this.nameable = nameable;
 		this.accepted = accepted;
 	}
 
@@ -29,8 +29,8 @@ public abstract class PrivateResponse<O extends Nameable>
 		return sessionId;
 	}
 
-	public O getObject() {
-		return object;
+	public N getNameable() {
+		return nameable;
 	}
 
 	public boolean wasAccepted() {
diff --git a/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java
index a47bdca70eb3dedec4a8888cf91e781c580c8514..20fc6c72a87603dfffefac40921f21837a10014a 100644
--- a/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java
+++ b/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java
@@ -390,7 +390,7 @@ class GroupInvitationManagerImpl extends ConversationClientImpl
 				GroupInvitationRequest invite = parseInvitationRequest(txn,
 						contactGroupId, m, meta, status);
 				messages.add(invite);
-				privateGroups.put(invite.getSessionId(), invite.getObject());
+				privateGroups.put(invite.getSessionId(), invite.getNameable());
 			}
 			for (Entry<MessageId, BdfDictionary> e : results.entrySet()) {
 				MessageId m = e.getKey();
diff --git a/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java
index 12fb5f8b80664ea3ec391288a8269f6ec67a4dd9..c0d5a7e2540badbe4d4c19e803500513f3664c25 100644
--- a/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java
+++ b/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java
@@ -343,7 +343,7 @@ abstract class SharingManagerImpl<S extends Shareable>
 				PrivateRequest<S> invite = parseInvitationRequest(txn, c, m,
 						meta, status);
 				messages.add(invite);
-				shareables.put(invite.getObject().getId(), invite.getObject());
+				shareables.put(invite.getNameable().getId(), invite.getNameable());
 			}
 			for (Entry<MessageId, BdfDictionary> e : results.entrySet()) {
 				MessageId m = e.getKey();
diff --git a/briar-core/src/test/java/org/briarproject/briar/introduction/IntroductionIntegrationTest.java b/briar-core/src/test/java/org/briarproject/briar/introduction/IntroductionIntegrationTest.java
index dbafc3c3a25b61ae060a73692ee9c8aaf8fcc40f..fb03924d0f51c42fcbe8fcb3f545d88274186ad3 100644
--- a/briar-core/src/test/java/org/briarproject/briar/introduction/IntroductionIntegrationTest.java
+++ b/briar-core/src/test/java/org/briarproject/briar/introduction/IntroductionIntegrationTest.java
@@ -161,7 +161,7 @@ public class IntroductionIntegrationTest
 		eventWaiter.await(TIMEOUT, 1);
 		assertTrue(listener0.response1Received);
 		assertEquals(introducee2.getAuthor().getName(),
-				listener0.getResponse().getObject().getName());
+				listener0.getResponse().getNameable().getName());
 		assertGroupCount(messageTracker0, g1.getId(), 2, 1);
 
 		// sync second ACCEPT message
@@ -169,7 +169,7 @@ public class IntroductionIntegrationTest
 		eventWaiter.await(TIMEOUT, 1);
 		assertTrue(listener0.response2Received);
 		assertEquals(introducee1.getAuthor().getName(),
-				listener0.getResponse().getObject().getName());
+				listener0.getResponse().getNameable().getName());
 		assertGroupCount(messageTracker0, g2.getId(), 2, 1);
 
 		// sync forwarded ACCEPT messages to introducees
@@ -267,7 +267,7 @@ public class IntroductionIntegrationTest
 
 		// assert that the name on the decline event is correct
 		assertEquals(introducee2.getAuthor().getName(),
-				listener0.getResponse().getObject().getName());
+				listener0.getResponse().getNameable().getName());
 
 		// sync second response
 		sync2To0(1, true);
@@ -284,7 +284,7 @@ public class IntroductionIntegrationTest
 		// assert that the name on the decline event is correct
 		eventWaiter.await(TIMEOUT, 1);
 		assertEquals(introducee1.getAuthor().getName(),
-				listener2.getResponse().getObject().getName());
+				listener2.getResponse().getNameable().getName());
 
 		// note how the introducer does not forward the second response,
 		// because after the first decline the protocol finished
@@ -358,7 +358,7 @@ public class IntroductionIntegrationTest
 		// assert that the name on the decline event is correct
 		eventWaiter.await(TIMEOUT, 1);
 		assertEquals(contact2From0.getAuthor().getName(),
-				listener1.getResponse().getObject().getName());
+				listener1.getResponse().getNameable().getName());
 
 		assertFalse(contactManager1
 				.contactExists(author2.getId(), author1.getId()));
@@ -486,7 +486,7 @@ public class IntroductionIntegrationTest
 		// assert that the name on the decline event is correct
 		eventWaiter.await(TIMEOUT, 1);
 		assertEquals(introducee1.getAuthor().getName(),
-				listener2.getResponse().getObject().getName());
+				listener2.getResponse().getNameable().getName());
 
 		// assert that introducee2 is in correct state
 		introduceeSession = getIntroduceeSession(c2);
diff --git a/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationIntegrationTest.java b/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationIntegrationTest.java
index bf60be53b0c150e45e86628ba81c77185873150f..70a14b9dfb9326b1c5bdc369d65794d99d0a9aee 100644
--- a/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationIntegrationTest.java
+++ b/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationIntegrationTest.java
@@ -99,9 +99,9 @@ public class GroupInvitationIntegrationTest
 		GroupInvitationRequest request =
 				(GroupInvitationRequest) messages.iterator().next();
 		assertEquals(msg, request.getMessage());
-		assertEquals(author0, request.getObject().getCreator());
+		assertEquals(author0, request.getNameable().getCreator());
 		assertEquals(timestamp, request.getTimestamp());
-		assertEquals(privateGroup0.getName(), request.getObject().getName());
+		assertEquals(privateGroup0.getName(), request.getNameable().getName());
 		assertFalse(request.isLocal());
 		assertFalse(request.isRead());
 		assertFalse(request.doesExist());
@@ -127,7 +127,7 @@ public class GroupInvitationIntegrationTest
 			if (m instanceof GroupInvitationResponse) {
 				foundResponse = true;
 				GroupInvitationResponse response = (GroupInvitationResponse) m;
-				assertEquals(privateGroup0, response.getObject());
+				assertEquals(privateGroup0, response.getNameable());
 				assertTrue(response.isLocal());
 				assertFalse(response.wasAccepted());
 			}
@@ -144,7 +144,7 @@ public class GroupInvitationIntegrationTest
 			if (m instanceof GroupInvitationResponse) {
 				foundResponse = true;
 				GroupInvitationResponse response = (GroupInvitationResponse) m;
-				assertEquals(privateGroup0, response.getObject());
+				assertEquals(privateGroup0, response.getNameable());
 				assertFalse(response.isLocal());
 				assertFalse(response.wasAccepted());
 			}
@@ -177,11 +177,11 @@ public class GroupInvitationIntegrationTest
 			if (m instanceof GroupInvitationResponse) {
 				foundResponse = true;
 				GroupInvitationResponse response = (GroupInvitationResponse) m;
-				assertEquals(privateGroup0, response.getObject());
+				assertEquals(privateGroup0, response.getNameable());
 				assertTrue(response.wasAccepted());
 			} else {
 				GroupInvitationRequest request = (GroupInvitationRequest) m;
-				assertEquals(privateGroup0, request.getObject());
+				assertEquals(privateGroup0, request.getNameable());
 				assertTrue(request.doesExist());
 			}
 		}
@@ -197,7 +197,7 @@ public class GroupInvitationIntegrationTest
 			if (m instanceof GroupInvitationResponse) {
 				foundResponse = true;
 				GroupInvitationResponse response = (GroupInvitationResponse) m;
-				assertEquals(privateGroup0, response.getObject());
+				assertEquals(privateGroup0, response.getNameable());
 				assertTrue(response.wasAccepted());
 			}
 		}
diff --git a/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImplTest.java b/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImplTest.java
index bd765a2b9b461925d4f7b1ba83e291f90a203659..de0c0193a8f7f2c5911c7cf2e44e143c4fd0b35c 100644
--- a/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImplTest.java
+++ b/briar-core/src/test/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImplTest.java
@@ -708,11 +708,11 @@ public class GroupInvitationManagerImplTest extends BrambleMockTestCase {
 			if (m.getId().equals(message.getId())) {
 				assertTrue(m instanceof GroupInvitationRequest);
 				assertEquals(time1, m.getTimestamp());
-				assertEquals(pg, ((GroupInvitationRequest) m).getObject());
+				assertEquals(pg, ((GroupInvitationRequest) m).getNameable());
 			} else if (m.getId().equals(messageId2)) {
 				assertTrue(m instanceof GroupInvitationResponse);
 				assertEquals(time2, m.getTimestamp());
-				assertEquals(pg, ((GroupInvitationResponse) m).getObject());
+				assertEquals(pg, ((GroupInvitationResponse) m).getNameable());
 			} else {
 				throw new AssertionError();
 			}
diff --git a/briar-core/src/test/java/org/briarproject/briar/sharing/BlogSharingIntegrationTest.java b/briar-core/src/test/java/org/briarproject/briar/sharing/BlogSharingIntegrationTest.java
index ad2b55538eb14f4493382820b5146184868b4006..5cee8b9ad17a5386dc9182b9a2373eb4567973e4 100644
--- a/briar-core/src/test/java/org/briarproject/briar/sharing/BlogSharingIntegrationTest.java
+++ b/briar-core/src/test/java/org/briarproject/briar/sharing/BlogSharingIntegrationTest.java
@@ -152,15 +152,15 @@ public class BlogSharingIntegrationTest
 		for (PrivateMessageHeader m : list) {
 			if (m instanceof BlogInvitationRequest) {
 				BlogInvitationRequest invitation = (BlogInvitationRequest) m;
-				assertEquals(blog2, invitation.getObject());
+				assertEquals(blog2, invitation.getNameable());
 				assertFalse(invitation.wasAnswered());
 				assertEquals(blog2.getAuthor().getName(),
 						invitation.getName());
-				assertFalse(invitation.getObject().isRssFeed());
+				assertFalse(invitation.getNameable().isRssFeed());
 				assertEquals("Hi!", invitation.getMessage());
 			} else {
 				BlogInvitationResponse response = (BlogInvitationResponse) m;
-				assertEquals(blog2, response.getObject());
+				assertEquals(blog2, response.getNameable());
 				assertTrue(response.wasAccepted());
 				assertTrue(response.isLocal());
 			}
@@ -225,15 +225,15 @@ public class BlogSharingIntegrationTest
 		for (PrivateMessageHeader m : list) {
 			if (m instanceof BlogInvitationRequest) {
 				BlogInvitationRequest invitation = (BlogInvitationRequest) m;
-				assertEquals(rssBlog, invitation.getObject());
+				assertEquals(rssBlog, invitation.getNameable());
 				assertFalse(invitation.wasAnswered());
 				assertEquals(rssBlog.getAuthor().getName(),
 						invitation.getName());
-				assertTrue(invitation.getObject().isRssFeed());
+				assertTrue(invitation.getNameable().isRssFeed());
 				assertEquals("Hi!", invitation.getMessage());
 			} else {
 				BlogInvitationResponse response = (BlogInvitationResponse) m;
-				assertEquals(rssBlog, response.getObject());
+				assertEquals(rssBlog, response.getNameable());
 				assertTrue(response.wasAccepted());
 				assertTrue(response.isLocal());
 			}
@@ -287,14 +287,14 @@ public class BlogSharingIntegrationTest
 		for (PrivateMessageHeader m : list) {
 			if (m instanceof BlogInvitationRequest) {
 				BlogInvitationRequest invitation = (BlogInvitationRequest) m;
-				assertEquals(blog2, invitation.getObject());
+				assertEquals(blog2, invitation.getNameable());
 				assertFalse(invitation.wasAnswered());
 				assertEquals(blog2.getAuthor().getName(),
 						invitation.getName());
 				assertEquals(null, invitation.getMessage());
 			} else {
 				BlogInvitationResponse response = (BlogInvitationResponse) m;
-				assertEquals(blog2, response.getObject());
+				assertEquals(blog2, response.getNameable());
 				assertFalse(response.wasAccepted());
 				assertTrue(response.isLocal());
 			}
@@ -559,7 +559,7 @@ public class BlogSharingIntegrationTest
 				BlogInvitationRequestReceivedEvent event =
 						(BlogInvitationRequestReceivedEvent) e;
 				eventWaiter.assertEquals(contactId1From0, event.getContactId());
-				Blog b = event.getMessageHeader().getObject();
+				Blog b = event.getMessageHeader().getNameable();
 				try {
 					Contact c = contactManager0.getContact(contactId1From0);
 					blogSharingManager0.respondToInvitation(b, c, true);
@@ -595,7 +595,7 @@ public class BlogSharingIntegrationTest
 						(BlogInvitationRequestReceivedEvent) e;
 				requestReceived = true;
 				if (!answer) return;
-				Blog b = event.getMessageHeader().getObject();
+				Blog b = event.getMessageHeader().getNameable();
 				try {
 					eventWaiter.assertEquals(1,
 							blogSharingManager1.getInvitations().size());
diff --git a/briar-core/src/test/java/org/briarproject/briar/sharing/ForumSharingIntegrationTest.java b/briar-core/src/test/java/org/briarproject/briar/sharing/ForumSharingIntegrationTest.java
index 2b13a1dc663b626080b6a194ceb03a49af199608..f473ec0acaa34ddb79d9cf16cb2b1ec96c46380c 100644
--- a/briar-core/src/test/java/org/briarproject/briar/sharing/ForumSharingIntegrationTest.java
+++ b/briar-core/src/test/java/org/briarproject/briar/sharing/ForumSharingIntegrationTest.java
@@ -137,12 +137,12 @@ public class ForumSharingIntegrationTest
 				ForumInvitationRequest invitation = (ForumInvitationRequest) m;
 				assertFalse(invitation.wasAnswered());
 				assertEquals(forum0.getName(), invitation.getName());
-				assertEquals(forum0, invitation.getObject());
+				assertEquals(forum0, invitation.getNameable());
 				assertEquals("Hi!", invitation.getMessage());
 				assertTrue(invitation.doesExist());
 			} else {
 				ForumInvitationResponse response = (ForumInvitationResponse) m;
-				assertEquals(forum0, response.getObject());
+				assertEquals(forum0, response.getNameable());
 				assertTrue(response.wasAccepted());
 				assertTrue(response.isLocal());
 			}
@@ -191,14 +191,14 @@ public class ForumSharingIntegrationTest
 		for (PrivateMessageHeader m : list) {
 			if (m instanceof ForumInvitationRequest) {
 				ForumInvitationRequest invitation = (ForumInvitationRequest) m;
-				assertEquals(forum0, invitation.getObject());
+				assertEquals(forum0, invitation.getNameable());
 				assertFalse(invitation.wasAnswered());
 				assertEquals(forum0.getName(), invitation.getName());
 				assertEquals(null, invitation.getMessage());
 				assertFalse(invitation.doesExist());
 			} else {
 				ForumInvitationResponse response = (ForumInvitationResponse) m;
-				assertEquals(forum0, response.getObject());
+				assertEquals(forum0, response.getNameable());
 				assertFalse(response.wasAccepted());
 				assertTrue(response.isLocal());
 			}
@@ -805,7 +805,7 @@ public class ForumSharingIntegrationTest
 						(ForumInvitationRequestReceivedEvent) e;
 				eventWaiter.assertEquals(contactId1From0, event.getContactId());
 				requestReceived = true;
-				Forum f = event.getMessageHeader().getObject();
+				Forum f = event.getMessageHeader().getNameable();
 				try {
 					if (respond) {
 						Contact c = contactManager0.getContact(contactId1From0);
@@ -843,7 +843,7 @@ public class ForumSharingIntegrationTest
 						(ForumInvitationRequestReceivedEvent) e;
 				requestReceived = true;
 				if (!answer) return;
-				Forum f = event.getMessageHeader().getObject();
+				Forum f = event.getMessageHeader().getNameable();
 				try {
 					if (respond) {
 						eventWaiter.assertEquals(1,