org.wildfly.clustering.ejb.infinispan.bean.InfinispanBeanSerializationContextInitializer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of wildfly-clustering-ejb-infinispan Show documentation
Show all versions of wildfly-clustering-ejb-infinispan Show documentation
An implementation of wildfly-clustering-ejb-spi based on an embedded Infinispan cache.
The newest version!
/*
* Copyright The WildFly Authors
* SPDX-License-Identifier: Apache-2.0
*/
package org.wildfly.clustering.ejb.infinispan.bean;
import org.infinispan.protostream.SerializationContext;
import org.jboss.ejb.client.SessionID;
import org.wildfly.clustering.marshalling.protostream.AbstractSerializationContextInitializer;
import org.wildfly.clustering.marshalling.protostream.FunctionalMarshaller;
/**
* A {@link SerializationContextInitializer} that registers marshallers for types in this package.
* @author Paul Ferraro
*/
public class InfinispanBeanSerializationContextInitializer extends AbstractSerializationContextInitializer {
@SuppressWarnings("unchecked")
@Override
public void registerMarshallers(SerializationContext context) {
context.registerMarshaller(new FunctionalMarshaller<>((Class>) (Class) InfinispanBeanMetaDataKey.class, SessionID.class, InfinispanBeanMetaDataKey::getId, InfinispanBeanMetaDataKey::new));
context.registerMarshaller(new FunctionalMarshaller<>((Class>) (Class) InfinispanBeanGroupKey.class, SessionID.class, InfinispanBeanGroupKey::getId, InfinispanBeanGroupKey::new));
}
}