private static void injectSubZero(SerializationConfig serializationConfig, Class<? extends AbstractSerializer> serializerClazz) { GlobalSerializerConfig globalSerializerConfig = serializationConfig.getGlobalSerializerConfig(); if (globalSerializerConfig == null) { globalSerializerConfig = new GlobalSerializerConfig(); serializationConfig.setGlobalSerializerConfig(globalSerializerConfig); } globalSerializerConfig.setClassName(serializerClazz.getName()).setOverrideJavaSerialization(true); }
protected void fillSerializers(final Node node, SerializationConfig serializationConfig) { for (Node child : childElements(node)) { final String name = cleanNodeName(child); final String value = getTextContent(child); if ("serializer".equals(name)) { SerializerConfig serializerConfig = new SerializerConfig(); final String typeClassName = getAttribute(child, "type-class"); final String className = getAttribute(child, "class-name"); serializerConfig.setTypeClassName(typeClassName); serializerConfig.setClassName(className); serializationConfig.addSerializerConfig(serializerConfig); } else if ("global-serializer".equals(name)) { GlobalSerializerConfig globalSerializerConfig = new GlobalSerializerConfig(); globalSerializerConfig.setClassName(value); String attrValue = getAttribute(child, "override-java-serialization"); boolean overrideJavaSerialization = attrValue != null && getBooleanValue(attrValue.trim()); globalSerializerConfig.setOverrideJavaSerialization(overrideJavaSerialization); serializationConfig.setGlobalSerializerConfig(globalSerializerConfig); } } }
protected void fillSerializers(final Node node, SerializationConfig serializationConfig) { for (Node child : childElements(node)) { final String name = cleanNodeName(child); final String value = getTextContent(child); if ("serializer".equals(name)) { SerializerConfig serializerConfig = new SerializerConfig(); final String typeClassName = getAttribute(child, "type-class"); final String className = getAttribute(child, "class-name"); serializerConfig.setTypeClassName(typeClassName); serializerConfig.setClassName(className); serializationConfig.addSerializerConfig(serializerConfig); } else if ("global-serializer".equals(name)) { GlobalSerializerConfig globalSerializerConfig = new GlobalSerializerConfig(); globalSerializerConfig.setClassName(value); String attrValue = getAttribute(child, "override-java-serialization"); boolean overrideJavaSerialization = attrValue != null && getBooleanValue(attrValue.trim()); globalSerializerConfig.setOverrideJavaSerialization(overrideJavaSerialization); serializationConfig.setGlobalSerializerConfig(globalSerializerConfig); } } }
@Test public void givenGlobalSerializerConfigDoes_whenUseAsGlobalSerializer_thenNewSubZeroIsUsedAsGlobalSerializer() { Config config = new Config(); config.getSerializationConfig().setGlobalSerializerConfig(new GlobalSerializerConfig().setClassName("foo")); SubZero.useAsGlobalSerializer(config); assertEquals(Serializer.class.getName(), config.getSerializationConfig().getGlobalSerializerConfig().getClassName()); }