package com.sap.runlet.operationaltransformation; public interface Transformer<O extends Operation<?>> { /** * Takes an operation from the client and an operation from the server, both * based on the same state. The complementary pair of operations is computed * such that if the client applies the server operation returned, and the * server applies the client operation returned, both end up in equal states * again. */ ClientServerOperationPair<O> transform(O clientOp, O serverOp); }