Package net.carcdr.ycrdt.panama
Class PanamaYDoc
java.lang.Object
net.carcdr.ycrdt.panama.PanamaYDoc
- All Implemented Interfaces:
AutoCloseable,net.carcdr.ycrdt.YDoc
Panama FFM implementation of YDoc.
This class provides access to Y-CRDT documents using Project Panama's Foreign Function and Memory API, calling into the yffi native library.
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a new document.PanamaYDoc(long clientId) Creates a new document with a specific client ID. -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyUpdate(byte[] update) voidapplyUpdate(net.carcdr.ycrdt.YTransaction txn, byte[] update) voidclose()byte[]encodeDiff(byte[] stateVector) byte[]encodeDiff(net.carcdr.ycrdt.YTransaction txn, byte[] stateVector) byte[]byte[]encodeStateAsUpdate(net.carcdr.ycrdt.YTransaction txn) byte[]byte[]encodeStateVector(net.carcdr.ycrdt.YTransaction txn) net.carcdr.ycrdt.YArraylonggetGuid()net.carcdr.ycrdt.YMapnet.carcdr.ycrdt.ObserverErrorHandlernet.carcdr.ycrdt.YTextnet.carcdr.ycrdt.YXmlElementgetXmlElement(String name) net.carcdr.ycrdt.YXmlFragmentgetXmlFragment(String name) net.carcdr.ycrdt.YXmlTextgetXmlText(String name) booleanisClosed()net.carcdr.ycrdt.YSubscriptionobserveUpdateV1(net.carcdr.ycrdt.UpdateObserver observer) voidsetObserverErrorHandler(net.carcdr.ycrdt.ObserverErrorHandler handler) voidtransaction(Consumer<net.carcdr.ycrdt.YTransaction> fn)
-
Constructor Details
-
PanamaYDoc
public PanamaYDoc()Creates a new document. -
PanamaYDoc
public PanamaYDoc(long clientId) Creates a new document with a specific client ID.- Parameters:
clientId- the client ID
-
-
Method Details
-
getClientId
public long getClientId()- Specified by:
getClientIdin interfacenet.carcdr.ycrdt.YDoc
-
getGuid
- Specified by:
getGuidin interfacenet.carcdr.ycrdt.YDoc
-
encodeStateAsUpdate
public byte[] encodeStateAsUpdate()- Specified by:
encodeStateAsUpdatein interfacenet.carcdr.ycrdt.YDoc
-
encodeStateAsUpdate
public byte[] encodeStateAsUpdate(net.carcdr.ycrdt.YTransaction txn) - Specified by:
encodeStateAsUpdatein interfacenet.carcdr.ycrdt.YDoc
-
applyUpdate
public void applyUpdate(byte[] update) - Specified by:
applyUpdatein interfacenet.carcdr.ycrdt.YDoc
-
applyUpdate
public void applyUpdate(net.carcdr.ycrdt.YTransaction txn, byte[] update) - Specified by:
applyUpdatein interfacenet.carcdr.ycrdt.YDoc
-
encodeStateVector
public byte[] encodeStateVector()- Specified by:
encodeStateVectorin interfacenet.carcdr.ycrdt.YDoc
-
encodeStateVector
public byte[] encodeStateVector(net.carcdr.ycrdt.YTransaction txn) - Specified by:
encodeStateVectorin interfacenet.carcdr.ycrdt.YDoc
-
encodeDiff
public byte[] encodeDiff(byte[] stateVector) - Specified by:
encodeDiffin interfacenet.carcdr.ycrdt.YDoc
-
encodeDiff
public byte[] encodeDiff(net.carcdr.ycrdt.YTransaction txn, byte[] stateVector) - Specified by:
encodeDiffin interfacenet.carcdr.ycrdt.YDoc
-
getText
- Specified by:
getTextin interfacenet.carcdr.ycrdt.YDoc
-
getArray
- Specified by:
getArrayin interfacenet.carcdr.ycrdt.YDoc
-
getMap
- Specified by:
getMapin interfacenet.carcdr.ycrdt.YDoc
-
getXmlText
- Specified by:
getXmlTextin interfacenet.carcdr.ycrdt.YDoc
-
getXmlElement
- Specified by:
getXmlElementin interfacenet.carcdr.ycrdt.YDoc
-
getXmlFragment
- Specified by:
getXmlFragmentin interfacenet.carcdr.ycrdt.YDoc
-
beginTransaction
- Specified by:
beginTransactionin interfacenet.carcdr.ycrdt.YDoc
-
transaction
- Specified by:
transactionin interfacenet.carcdr.ycrdt.YDoc
-
observeUpdateV1
public net.carcdr.ycrdt.YSubscription observeUpdateV1(net.carcdr.ycrdt.UpdateObserver observer) - Specified by:
observeUpdateV1in interfacenet.carcdr.ycrdt.YDoc
-
setObserverErrorHandler
public void setObserverErrorHandler(net.carcdr.ycrdt.ObserverErrorHandler handler) - Specified by:
setObserverErrorHandlerin interfacenet.carcdr.ycrdt.YDoc
-
getObserverErrorHandler
public net.carcdr.ycrdt.ObserverErrorHandler getObserverErrorHandler()- Specified by:
getObserverErrorHandlerin interfacenet.carcdr.ycrdt.YDoc
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfacenet.carcdr.ycrdt.YDoc
-
isClosed
public boolean isClosed()- Specified by:
isClosedin interfacenet.carcdr.ycrdt.YDoc
-