Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.net4j.buddies/src/org/eclipse/net4j/internal/buddies/protocol/OpenSessionRequest.java')
-rw-r--r--plugins/org.eclipse.net4j.buddies/src/org/eclipse/net4j/internal/buddies/protocol/OpenSessionRequest.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/plugins/org.eclipse.net4j.buddies/src/org/eclipse/net4j/internal/buddies/protocol/OpenSessionRequest.java b/plugins/org.eclipse.net4j.buddies/src/org/eclipse/net4j/internal/buddies/protocol/OpenSessionRequest.java
index 68f6f92927..980a10228e 100644
--- a/plugins/org.eclipse.net4j.buddies/src/org/eclipse/net4j/internal/buddies/protocol/OpenSessionRequest.java
+++ b/plugins/org.eclipse.net4j.buddies/src/org/eclipse/net4j/internal/buddies/protocol/OpenSessionRequest.java
@@ -19,6 +19,7 @@ import org.eclipse.net4j.signal.RequestWithConfirmation;
import org.eclipse.net4j.util.WrappedException;
import org.eclipse.net4j.util.io.ExtendedDataInputStream;
import org.eclipse.net4j.util.io.ExtendedDataOutputStream;
+import org.eclipse.net4j.util.lifecycle.LifecycleUtil;
import java.io.IOException;
import java.io.ObjectInputStream;
@@ -61,11 +62,13 @@ public class OpenSessionRequest extends RequestWithConfirmation<IBuddySession>
return null;
}
+ BuddySession session = new BuddySession(getProtocol().getChannel());
+ getProtocol().setInfraStructure(session);
+
int size = in.readInt();
- String[] buddies = new String[size];
for (int i = 0; i < size; i++)
{
- buddies[i] = in.readString();
+ session.addBuddy(in.readString());
}
IBuddyAccount account;
@@ -83,8 +86,8 @@ public class OpenSessionRequest extends RequestWithConfirmation<IBuddySession>
throw WrappedException.wrap(ex);
}
- BuddySession session = new BuddySession(getProtocol().getChannel(), account, buddies);
- getProtocol().setInfraStructure(session);
+ session.setSelf(account);
+ LifecycleUtil.activate(session);
return session;
}
}

Back to the top