de.javakaffee.kryoserializers.SynchronizedCollectionsSerializer Java Examples
The following examples show how to use
de.javakaffee.kryoserializers.SynchronizedCollectionsSerializer.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: KryoSerialization.java From JPPF with Apache License 2.0 | 6 votes |
/** * Create a Kryo instance, with its instantiator strategy and a set of * common serializers (from kryo-serializers project) initialized. * @return an instance of {@link Kryo}. */ private static Kryo createKryo() { final Kryo kryo = new Kryo(new CustomClassResolver(), new MapReferenceResolver()); kryo.setAutoReset(true); kryo.setInstantiatorStrategy(new DefaultInstantiatorStrategy(new StdInstantiatorStrategy())); kryo.register(ObjectName.class, new ObjectNameSerializer()); kryo.register(OffloadableNotification.class, new GenericObjectSerializer()); kryo.register(TaskExecutionNotification.class, new GenericObjectSerializer()); kryo.register(TaskGraph.class, new JobTaskGraphSerializer()); kryo.register(Collection.class, new CollectionSerializer()); kryo.register(Arrays.asList( "" ).getClass(), new ArraysAsListSerializer() ); kryo.register(Collections.EMPTY_LIST.getClass(), new CollectionsEmptyListSerializer() ); kryo.register(Collections.EMPTY_MAP.getClass(), new CollectionsEmptyMapSerializer() ); kryo.register(Collections.EMPTY_SET.getClass(), new CollectionsEmptySetSerializer() ); kryo.register(Collections.singletonList( "" ).getClass(), new CollectionsSingletonListSerializer() ); kryo.register(Collections.singleton( "" ).getClass(), new CollectionsSingletonSetSerializer() ); kryo.register(Collections.singletonMap( "", "" ).getClass(), new CollectionsSingletonMapSerializer() ); kryo.register(GregorianCalendar.class, new GregorianCalendarSerializer()); kryo.register(InvocationHandler.class, new JdkProxySerializer()); UnmodifiableCollectionsSerializer.registerSerializers(kryo); SynchronizedCollectionsSerializer.registerSerializers(kryo); kryo.register(EnumMap.class, new EnumMapSerializer()); kryo.register(EnumSet.class, new EnumSetSerializer()); return kryo; }
Example #2
Source File: KryoSerialization.java From eagle with Apache License 2.0 | 6 votes |
protected Kryo initialValue() { Kryo kryo = new Kryo(); kryo.register(CGLibProxySerializer.CGLibProxyMarker.class, new CGLibProxySerializer()); UnmodifiableCollectionsSerializer.registerSerializers(kryo); SynchronizedCollectionsSerializer.registerSerializers(kryo); kryo.register(Arrays.asList("").getClass(), new ArraysAsListSerializer()); ImmutableListSerializer.registerSerializers(kryo); ImmutableSetSerializer.registerSerializers(kryo); ImmutableMapSerializer.registerSerializers(kryo); ImmutableMultimapSerializer.registerSerializers(kryo); ReverseListSerializer.registerSerializers(kryo); UnmodifiableNavigableSetSerializer.registerSerializers(kryo); ArrayListMultimapSerializer.registerSerializers(kryo); HashMultimapSerializer.registerSerializers(kryo); LinkedHashMultimapSerializer.registerSerializers(kryo); LinkedListMultimapSerializer.registerSerializers(kryo); TreeMultimapSerializer.registerSerializers(kryo); return kryo; }
Example #3
Source File: KryoSerializer.java From cqengine with Apache License 2.0 | 5 votes |
/** * Creates a new instance of Kryo serializer, for use with the given object type. * <p/> * Note: this method is public to allow end-users to validate compatibility of their POJOs, * with the Kryo serializer as used by CQEngine. * * @param objectType The type of object which the instance of Kryo will serialize * @return a new instance of Kryo serializer */ @SuppressWarnings({"ArraysAsListWithZeroOrOneArgument", "WeakerAccess"}) protected Kryo createKryo(Class<?> objectType) { Kryo kryo = new Kryo(); // Instantiate serialized objects via a no-arg constructor when possible, falling back to Objenesis... kryo.setInstantiatorStrategy(new DefaultInstantiatorStrategy(new StdInstantiatorStrategy())); // Register the object which this index will persist... kryo.register(objectType); kryo.setRegistrationRequired(false); // Register additional serializers which are not built-in to Kryo 3.0... kryo.register(Arrays.asList().getClass(), new ArraysAsListSerializer()); UnmodifiableCollectionsSerializer.registerSerializers(kryo); SynchronizedCollectionsSerializer.registerSerializers(kryo); return kryo; }
Example #4
Source File: DbStoragePlainFile.java From Paper with Apache License 2.0 | 5 votes |
private Kryo createKryoInstance(boolean compatibilityMode) { Kryo kryo = new Kryo(); if (compatibilityMode) { kryo.getFieldSerializerConfig().setOptimizedGenerics(true); } kryo.register(PaperTable.class); kryo.setDefaultSerializer(CompatibleFieldSerializer.class); kryo.setReferences(false); // Serialize Arrays$ArrayList //noinspection ArraysAsListWithZeroOrOneArgument kryo.register(Arrays.asList("").getClass(), new ArraysAsListSerializer()); UnmodifiableCollectionsSerializer.registerSerializers(kryo); SynchronizedCollectionsSerializer.registerSerializers(kryo); // Serialize inner AbstractList$SubAbstractListRandomAccess kryo.addDefaultSerializer(new ArrayList<>().subList(0, 0).getClass(), new NoArgCollectionSerializer()); // Serialize AbstractList$SubAbstractList kryo.addDefaultSerializer(new LinkedList<>().subList(0, 0).getClass(), new NoArgCollectionSerializer()); // To keep backward compatibility don't change the order of serializers above // UUID support kryo.register(UUID.class, new UUIDSerializer()); for (Class<?> clazz : mCustomSerializers.keySet()) kryo.register(clazz, mCustomSerializers.get(clazz)); kryo.setInstantiatorStrategy( new Kryo.DefaultInstantiatorStrategy(new StdInstantiatorStrategy())); return kryo; }
Example #5
Source File: SerDeUtils.java From metron with Apache License 2.0 | 5 votes |
@Override protected Kryo initialValue() { Kryo ret = new Kryo(); ret.setReferences(true); ret.setInstantiatorStrategy(new DefaultInstantiatorStrategy(new StdInstantiatorStrategy())); ret.register(Arrays.asList("").getClass(), new ArraysAsListSerializer()); ret.register(Collections.EMPTY_LIST.getClass(), new CollectionsEmptyListSerializer()); ret.register(Collections.EMPTY_MAP.getClass(), new CollectionsEmptyMapSerializer()); ret.register(Collections.EMPTY_SET.getClass(), new CollectionsEmptySetSerializer()); ret.register(Collections.singletonList("").getClass(), new CollectionsSingletonListSerializer()); ret.register(Collections.singleton("").getClass(), new CollectionsSingletonSetSerializer()); ret.register(Collections.singletonMap("", "").getClass(), new CollectionsSingletonMapSerializer()); ret.register(GregorianCalendar.class, new GregorianCalendarSerializer()); ret.register(InvocationHandler.class, new JdkProxySerializer()); UnmodifiableCollectionsSerializer.registerSerializers(ret); SynchronizedCollectionsSerializer.registerSerializers(ret); // custom serializers for non-jdk libs // register CGLibProxySerializer, works in combination with the appropriate action in handleUnregisteredClass (see below) ret.register(CGLibProxySerializer.CGLibProxyMarker.class, new CGLibProxySerializer()); // joda DateTime, LocalDate and LocalDateTime ret.register(LocalDate.class, new JodaLocalDateSerializer()); ret.register(LocalDateTime.class, new JodaLocalDateTimeSerializer()); // guava ImmutableList, ImmutableSet, ImmutableMap, ImmutableMultimap, UnmodifiableNavigableSet ImmutableListSerializer.registerSerializers(ret); ImmutableSetSerializer.registerSerializers(ret); ImmutableMapSerializer.registerSerializers(ret); ImmutableMultimapSerializer.registerSerializers(ret); return ret; }
Example #6
Source File: SerDeUtils.java From metron with Apache License 2.0 | 5 votes |
@Override protected Kryo initialValue() { Kryo ret = new Kryo(); ret.setReferences(true); ret.setInstantiatorStrategy(new DefaultInstantiatorStrategy(new StdInstantiatorStrategy())); ret.register(Arrays.asList("").getClass(), new ArraysAsListSerializer()); ret.register(Collections.EMPTY_LIST.getClass(), new CollectionsEmptyListSerializer()); ret.register(Collections.EMPTY_MAP.getClass(), new CollectionsEmptyMapSerializer()); ret.register(Collections.EMPTY_SET.getClass(), new CollectionsEmptySetSerializer()); ret.register(Collections.singletonList("").getClass(), new CollectionsSingletonListSerializer()); ret.register(Collections.singleton("").getClass(), new CollectionsSingletonSetSerializer()); ret.register(Collections.singletonMap("", "").getClass(), new CollectionsSingletonMapSerializer()); ret.register(GregorianCalendar.class, new GregorianCalendarSerializer()); ret.register(InvocationHandler.class, new JdkProxySerializer()); UnmodifiableCollectionsSerializer.registerSerializers(ret); SynchronizedCollectionsSerializer.registerSerializers(ret); // custom serializers for non-jdk libs // register CGLibProxySerializer, works in combination with the appropriate action in handleUnregisteredClass (see below) ret.register(CGLibProxySerializer.CGLibProxyMarker.class, new CGLibProxySerializer()); // joda DateTime, LocalDate and LocalDateTime ret.register(LocalDate.class, new JodaLocalDateSerializer()); ret.register(LocalDateTime.class, new JodaLocalDateTimeSerializer()); // guava ImmutableList, ImmutableSet, ImmutableMap, ImmutableMultimap, UnmodifiableNavigableSet ImmutableListSerializer.registerSerializers(ret); ImmutableSetSerializer.registerSerializers(ret); ImmutableMapSerializer.registerSerializers(ret); ImmutableMultimapSerializer.registerSerializers(ret); return ret; }
Example #7
Source File: Nd4jRegistrator.java From nd4j with Apache License 2.0 | 5 votes |
@Override public void registerClasses(Kryo kryo) { kryo.register(Nd4j.getBackend().getNDArrayClass(), new Nd4jSerializer()); kryo.register(Nd4j.getBackend().getComplexNDArrayClass(), new Nd4jSerializer()); kryo.register(AtomicDouble.class, new AtomicDoubleSerializer()); //Also register Java types (synchronized/unmodifiable collections), which will fail by default UnmodifiableCollectionsSerializer.registerSerializers(kryo); SynchronizedCollectionsSerializer.registerSerializers(kryo); }
Example #8
Source File: Nd4jRegistrator.java From deeplearning4j with Apache License 2.0 | 5 votes |
@Override public void registerClasses(Kryo kryo) { kryo.register(Nd4j.getBackend().getNDArrayClass(), new Nd4jSerializer()); kryo.register(AtomicDouble.class, new AtomicDoubleSerializer()); //Also register Java types (synchronized/unmodifiable collections), which will fail by default UnmodifiableCollectionsSerializer.registerSerializers(kryo); SynchronizedCollectionsSerializer.registerSerializers(kryo); }
Example #9
Source File: ValkyrienSkiesMod.java From Valkyrien-Skies with Apache License 2.0 | 4 votes |
/** * Create our new instance of {@link Kryo}. This is done asynchronously with CompletableFuture * so as not to slow down initialization. We save a lot of time this way! */ private void serializationInitAsync() { kryoInstance = CompletableFuture.supplyAsync(() -> { long start = System.currentTimeMillis(); Kryo kryo = new Kryo(); // region More serializers //noinspection ArraysAsListWithZeroOrOneArgument UnmodifiableCollectionsSerializer.registerSerializers(kryo); SynchronizedCollectionsSerializer.registerSerializers(kryo); ImmutableListSerializer.registerSerializers(kryo); ImmutableSetSerializer.registerSerializers(kryo); ImmutableMapSerializer.registerSerializers(kryo); ImmutableMultimapSerializer.registerSerializers(kryo); ImmutableTableSerializer.registerSerializers(kryo); ReverseListSerializer.registerSerializers(kryo); UnmodifiableNavigableSetSerializer.registerSerializers(kryo); ArrayListMultimapSerializer.registerSerializers(kryo); HashMultimapSerializer.registerSerializers(kryo); LinkedHashMultimapSerializer.registerSerializers(kryo); LinkedListMultimapSerializer.registerSerializers(kryo); TreeMultimapSerializer.registerSerializers(kryo); ArrayTableSerializer.registerSerializers(kryo); HashBasedTableSerializer.registerSerializers(kryo); TreeBasedTableSerializer.registerSerializers(kryo); // endregion kryo.register(ConcurrentIndexedCollection.class); kryo.register(ShipData.class); kryo.register(ShipPositionData.class); kryo.register(VSChunkClaim.class); kryo.register(HashSet.class); kryo.register(UUID.class, new UUIDSerializer()); // This should be changed to true but only once we're stable kryo.setRegistrationRequired(false); log.debug("Kryo initialization: " + (System.currentTimeMillis() - start) + "ms"); return kryo; }); }