package org.infinispan.objectfilter.test.model; import org.infinispan.protostream.EnumMarshaller; /** * @author anistor@redhat.com * @since 7.0 */ public class GenderMarshaller implements EnumMarshaller<Person.Gender> { @Override public Person.Gender decode(int enumValue) { switch (enumValue) { case 0: return Person.Gender.MALE; case 1: return Person.Gender.FEMALE; } return null; // unknown value } @Override public int encode(Person.Gender gender) { switch (gender) { case MALE: return 0; case FEMALE: return 1; default: throw new IllegalArgumentException("Unexpected User.Gender value : " + gender); } } @Override public Class<Person.Gender> getJavaClass() { return Person.Gender.class; } @Override public String getTypeName() { return "org.infinispan.objectfilter.test.model.Person.Gender"; } }