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.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); } }