private RemoteObjectDefMessage readObjectDefs(ByteBuffer buffer) throws IOException{ RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); int numObjs = buffer.get() & 0xff; ObjectDef[] defs = new ObjectDef[numObjs]; for (int i = 0; i < numObjs; i++){ defs[i] = readObjectDef(buffer); } defMsg.objects = defs; return defMsg; }
public void exposeObject(String name, Object obj) throws IOException{ // Create a local object LocalObject localObj = new LocalObject(); localObj.objectName = name; localObj.objectId = objectIdCounter++; localObj.theObject = obj; //localObj.methods = obj.getClass().getMethods(); ArrayList<Method> methodList = new ArrayList<Method>(); for (Method method : obj.getClass().getMethods()){ if (method.getDeclaringClass() == obj.getClass()){ methodList.add(method); } } localObj.methods = methodList.toArray(new Method[methodList.size()]); // Put it in the store localObjects.put(localObj.objectId, localObj); // Inform the others of its existence RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); defMsg.objects = new ObjectDef[]{ makeObjectDef(localObj) }; if (client != null) { client.send(defMsg); logger.log(Level.FINE, "Client: Sending {0}", defMsg); } else { server.broadcast(defMsg); logger.log(Level.FINE, "Server: Sending {0}", defMsg); } }
private void onConnection(HostedConnection conn) { if (localObjects.size() > 0){ // send a object definition message ObjectDef[] defs = new ObjectDef[localObjects.size()]; int i = 0; for (Entry<LocalObject> entry : localObjects){ defs[i] = makeObjectDef(entry.getValue()); i++; } RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); defMsg.objects = defs; if (this.client != null){ this.client.send(defMsg); logger.log(Level.FINE, "Client: Sending {0}", defMsg); } else{ conn.send(defMsg); logger.log(Level.FINE, "Server: Sending {0}", defMsg); } } }
private RemoteObjectDefMessage readObjectDefs(ByteBuffer buffer) throws IOException{ RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); int numObjs = buffer.get() & 0xff; ObjectDef[] defs = new ObjectDef[numObjs]; for (int i = 0; i < numObjs; i++){ defs[i] = readObjectDef(buffer); } defMsg.objects = defs; return defMsg; }
private RemoteObjectDefMessage readObjectDefs(ByteBuffer buffer) throws IOException{ RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); int numObjs = buffer.get() & 0xff; ObjectDef[] defs = new ObjectDef[numObjs]; for (int i = 0; i < numObjs; i++){ defs[i] = readObjectDef(buffer); } defMsg.objects = defs; return defMsg; }
public void exposeObject(String name, Object obj) throws IOException{ // Create a local object LocalObject localObj = new LocalObject(); localObj.objectName = name; localObj.objectId = objectIdCounter++; localObj.theObject = obj; //localObj.methods = obj.getClass().getMethods(); ArrayList<Method> methodList = new ArrayList<Method>(); for (Method method : obj.getClass().getMethods()){ if (method.getDeclaringClass() == obj.getClass()){ methodList.add(method); } } localObj.methods = methodList.toArray(new Method[methodList.size()]); // Put it in the store localObjects.put(localObj.objectId, localObj); // Inform the others of its existence RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); defMsg.objects = new ObjectDef[]{ makeObjectDef(localObj) }; if (client != null) { client.send(defMsg); logger.log(Level.FINE, "Client: Sending {0}", defMsg); } else { server.broadcast(defMsg); logger.log(Level.FINE, "Server: Sending {0}", defMsg); } }
public void exposeObject(String name, Object obj) throws IOException{ // Create a local object LocalObject localObj = new LocalObject(); localObj.objectName = name; localObj.objectId = objectIdCounter++; localObj.theObject = obj; //localObj.methods = obj.getClass().getMethods(); ArrayList<Method> methodList = new ArrayList<Method>(); for (Method method : obj.getClass().getMethods()){ if (method.getDeclaringClass() == obj.getClass()){ methodList.add(method); } } localObj.methods = methodList.toArray(new Method[methodList.size()]); // Put it in the store localObjects.put(localObj.objectId, localObj); // Inform the others of its existence RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); defMsg.objects = new ObjectDef[]{ makeObjectDef(localObj) }; if (client != null) { client.send(defMsg); logger.log(Level.INFO, "Client: Sending {0}", defMsg); } else { server.broadcast(defMsg); logger.log(Level.INFO, "Server: Sending {0}", defMsg); } }
private void onConnection(HostedConnection conn) { if (localObjects.size() > 0){ // send a object definition message ObjectDef[] defs = new ObjectDef[localObjects.size()]; int i = 0; for (Entry<LocalObject> entry : localObjects){ defs[i] = makeObjectDef(entry.getValue()); i++; } RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); defMsg.objects = defs; if (this.client != null){ this.client.send(defMsg); logger.log(Level.INFO, "Client: Sending {0}", defMsg); } else{ conn.send(defMsg); logger.log(Level.INFO, "Server: Sending {0}", defMsg); } } }
private void onConnection(HostedConnection conn) { if (localObjects.size() > 0){ // send a object definition message ObjectDef[] defs = new ObjectDef[localObjects.size()]; int i = 0; for (Entry<LocalObject> entry : localObjects){ defs[i] = makeObjectDef(entry.getValue()); i++; } RemoteObjectDefMessage defMsg = new RemoteObjectDefMessage(); defMsg.objects = defs; if (this.client != null){ this.client.send(defMsg); logger.log(Level.FINE, "Client: Sending {0}", defMsg); } else{ conn.send(defMsg); logger.log(Level.FINE, "Server: Sending {0}", defMsg); } } }