Class SynchronizedDecoratorExternalizer<T>
- java.lang.Object
-
- org.wildfly.clustering.marshalling.spi.DecoratorExternalizer<T>
-
- org.wildfly.clustering.marshalling.spi.SynchronizedDecoratorExternalizer<T>
-
- All Implemented Interfaces:
Function<T,T>,Externalizer<T>,org.wildfly.security.ParametricPrivilegedAction<T,T>
public class SynchronizedDecoratorExternalizer<T> extends DecoratorExternalizer<T>
A decorator marshaller that writes the decorated object while holding its monitor lock. e.g. to enable iteration over a decorated collection without the risk of a ConcurrentModificationException.- Author:
- Paul Ferraro
-
-
Constructor Summary
Constructors Constructor Description SynchronizedDecoratorExternalizer(Class<T> decoratedClass, UnaryOperator<T> decorator, T sample)Constructs a decorator externalizer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidwriteObject(ObjectOutput output, T value)-
Methods inherited from class org.wildfly.clustering.marshalling.spi.DecoratorExternalizer
getTargetClass, readObject, run
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.wildfly.clustering.marshalling.Externalizer
size
-
-
-
-
Constructor Detail
-
SynchronizedDecoratorExternalizer
public SynchronizedDecoratorExternalizer(Class<T> decoratedClass, UnaryOperator<T> decorator, T sample)
Constructs a decorator externalizer.- Parameters:
decoratedClass- the generalized type of the decorated objectdecorator- the decoration functionsample- a sample object used to determine the type of the decorated object
-
-
Method Detail
-
writeObject
public void writeObject(ObjectOutput output, T value) throws IOException
- Specified by:
writeObjectin interfaceExternalizer<T>- Overrides:
writeObjectin classDecoratorExternalizer<T>- Throws:
IOException
-
-