
de.javakaffee.kryoserializers.RegexSerializer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of kryo-serializers Show documentation
Show all versions of kryo-serializers Show documentation
Additional kryo (http://kryo.googlecode.com) serializers for standard jdk types (e.g. currency, jdk proxies) and some for external libs (e.g. joda time, cglib proxies, wicket).
package de.javakaffee.kryoserializers;
import java.util.regex.Pattern;
import com.esotericsoftware.kryo.Kryo;
import com.esotericsoftware.kryo.Serializer;
import com.esotericsoftware.kryo.io.Input;
import com.esotericsoftware.kryo.io.Output;
/**
* Kryo {@link Serializer} for regex {@link Pattern}s.
*
* @author Martin Grotzke
* @author serverperformance
*/
public class RegexSerializer extends Serializer {
public RegexSerializer() {
setImmutable(true);
}
@Override
public void write(final Kryo kryo, final Output output, final Pattern pattern) {
output.writeString(pattern.pattern());
output.writeInt(pattern.flags(), true);
}
@Override
public Pattern read(final Kryo kryo, final Input input, final Class patternClass) {
String regex = input.readString();
int flags = input.readInt(true);
return Pattern.compile(regex, flags);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy