public static void initializeClasses() { // Doing it here means that the client code only needs to // call our initialize. Serializer.registerClass(ChatMessage.class); }
registerClass(boolean.class, new BooleanSerializer()); registerClass(byte.class, new ByteSerializer()); registerClass(char.class, new CharSerializer()); registerClass(short.class, new ShortSerializer()); registerClass(int.class, new IntSerializer()); registerClass(long.class, new LongSerializer()); registerClass(float.class, new FloatSerializer()); registerClass(double.class, new DoubleSerializer()); registerClass(Boolean.class, new BooleanSerializer()); registerClass(Byte.class, new ByteSerializer()); registerClass(Character.class, new CharSerializer()); registerClass(Short.class, new ShortSerializer()); registerClass(Integer.class, new IntSerializer()); registerClass(Long.class, new LongSerializer()); registerClass(Float.class, new FloatSerializer()); registerClass(Double.class, new DoubleSerializer()); registerClass(String.class, new StringSerializer()); registerClass(Vector3f.class, new Vector3Serializer()); registerClass(Date.class, new DateSerializer()); registerClass(AbstractCollection.class, new CollectionSerializer()); registerClass(AbstractList.class, new CollectionSerializer()); registerClass(AbstractSet.class, new CollectionSerializer()); registerClass(ArrayList.class, new CollectionSerializer()); registerClass(HashSet.class, new CollectionSerializer()); registerClass(LinkedHashSet.class, new CollectionSerializer());
public static void registerClasses(Class... classes) { for( Class c : classes ) { registerClass(c); } }
@Override protected void onInitialize( HostedServiceManager serviceManager ) { // Make sure our message type is registered Serializer.registerClass(SerializerRegistrationsMessage.class); Serializer.registerClass(SerializerRegistrationsMessage.Registration.class); }
public static SerializerRegistration registerClass(Class cls) { return registerClass(cls, true); }
@Override protected void onInitialize( ClientServiceManager serviceManager ) { // Make sure our message type is registered if it isn't already if( Serializer.getExactSerializerRegistration(SerializerRegistrationsMessage.class) == null ) { // This is the minimum we'd need just to be able to register // the rest... otherwise we can't even receive this message. Serializer.registerClass(SerializerRegistrationsMessage.class); Serializer.registerClass(SerializerRegistrationsMessage.Registration.class); } else { log.log(Level.INFO, "Skipping registration of SerializerRegistrationsMessage."); } // Add our listener for that message type serviceManager.getClient().addMessageListener(this, SerializerRegistrationsMessage.class); }
@SuppressWarnings("unchecked") public static SerializerRegistration getSerializerRegistration(Class cls, boolean failOnMiss) { SerializerRegistration reg = classRegistrations.get(cls); if (reg != null) return reg; for (Map.Entry<Class, SerializerRegistration> entry : classRegistrations.entrySet()) { if (entry.getKey().isAssignableFrom(Serializable.class)) continue; if (entry.getKey().isAssignableFrom(cls)) return entry.getValue(); } if (cls.isArray()) return registerClass(cls, arraySerializer); if (Serializable.class.isAssignableFrom(cls)) { return getExactSerializerRegistration(java.io.Serializable.class); } // See if the class could be safely auto-registered if (cls.isAnnotationPresent(Serializable.class)) { Serializable serializable = (Serializable)cls.getAnnotation(Serializable.class); short classId = serializable.id(); if( classId != 0 ) { // No reason to fail because the ID is fixed failOnMiss = false; } } if( failOnMiss ) { throw new IllegalArgumentException( "Class has not been registered:" + cls ); } return registerClass(cls, fieldSerializer); }
/** * @deprecated This cannot be implemented in a reasonable way that works in * all deployment methods. */ @Deprecated public static SerializerRegistration[] registerPackage(String pkgName) { try { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); String path = pkgName.replace('.', '/'); Enumeration<URL> resources = classLoader.getResources(path); List<File> dirs = new ArrayList<File>(); while (resources.hasMoreElements()) { URL resource = resources.nextElement(); dirs.add(new File(resource.getFile())); } ArrayList<Class> classes = new ArrayList<Class>(); for (File directory : dirs) { classes.addAll(findClasses(directory, pkgName)); } SerializerRegistration[] registeredClasses = new SerializerRegistration[classes.size()]; for (int i = 0; i != classes.size(); ++i) { Class clz = classes.get(i); registeredClasses[i] = registerClass(clz, false); } return registeredClasses; } catch (Exception e) { e.printStackTrace(); } return new SerializerRegistration[0]; }
public static void main(String[] args) throws IOException, InterruptedException{ Serializer.registerClass(SomeObject.class); Serializer.registerClass(TestSerializationMessage.class); Server server = Network.createServer( 5110 ); server.start(); Client client = Network.connectToServer( "localhost", 5110 ); client.start(); server.addMessageListener(new TestSerialization(), TestSerializationMessage.class); client.send(new TestSerializationMessage(true)); Thread.sleep(10000); }
public static void main(String[] args) throws IOException, InterruptedException{ Serializer.registerClass(PingMessage.class); Serializer.registerClass(PongMessage.class); Server server = Network.createServer(5110); server.start(); Client client = Network.connectToServer("localhost", 5110); client.start(); server.addMessageListener(new ServerPingResponder(), PingMessage.class); client.addMessageListener(new ClientPingResponder(), PongMessage.class); System.out.println("Client: Sending ping message.."); client.send(new PingMessage()); Object obj = new Object(); synchronized (obj){ obj.wait(); } } }
public static void main(String[] args) throws IOException, InterruptedException{ Serializer.registerClass(Savable.class, new SavableSerializer()); createServer(); Client client = Network.connectToServer("localhost", 5110); client.start(); ObjectStore store = new ObjectStore(client); ServerAccess access = store.getExposedObject("access", ServerAccess.class, true); boolean result = access.attachChild("Models/Oto/Oto.mesh.xml"); System.out.println(result); } }
public static void main(String[] args) throws IOException, InterruptedException{ Serializer.registerClass(TimestampMessage.class);
public static void main(String[] args) throws IOException, InterruptedException { Serializer.registerClass(TestMessage.class); // Use this to test the client/server name version check //Server server = Network.createServer( "bad name", 42, 5110, 5110 ); Server server = Network.createServer(5110, 5110); server.start(); Client client = Network.connectToServer("localhost", 5110); client.start(); client.addMessageListener(new TestThroughput(false), TestMessage.class); server.addMessageListener(new TestThroughput(true), TestMessage.class); Thread.sleep(1); TestMessage test = new TestMessage(); // for( int i = 0; i < 10; i++ ) { while (true) { //System.out.println( "sending." ); client.send(test); } //Thread.sleep(5000); } }
public static void registerClasses(Class... classes) { for( Class c : classes ) { registerClass(c); } }
@Override protected void onInitialize( HostedServiceManager serviceManager ) { // Make sure our message type is registered Serializer.registerClass(SerializerRegistrationsMessage.class); Serializer.registerClass(SerializerRegistrationsMessage.Registration.class); }
public static void registerClasses(Class... classes) { for( Class c : classes ) { registerClass(c); } }
public static SerializerRegistration registerClass(Class cls) { return registerClass(cls, true); }
public static SerializerRegistration registerClass(Class cls) { return registerClass(cls, true); }
private void initialize() { Serializer.registerClass(ClientInfo.class, new FieldSerializer()); Serializer.registerClass(Keeper.class, new FieldSerializer()); }
@Override protected void onInitialize( ClientServiceManager serviceManager ) { // Make sure our message type is registered if it isn't already if( Serializer.getExactSerializerRegistration(SerializerRegistrationsMessage.class) == null ) { // This is the minimum we'd need just to be able to register // the rest... otherwise we can't even receive this message. Serializer.registerClass(SerializerRegistrationsMessage.class); Serializer.registerClass(SerializerRegistrationsMessage.Registration.class); } else { log.log(Level.INFO, "Skipping registration of SerializerRegistrationsMessage."); } // Add our listener for that message type serviceManager.getClient().addMessageListener(this, SerializerRegistrationsMessage.class); }