当前位置: 首页>>代码示例>>Java>>正文


Java Op.setData方法代码示例

本文整理汇总了Java中org.apache.zookeeper.Op.setData方法的典型用法代码示例。如果您正苦于以下问题:Java Op.setData方法的具体用法?Java Op.setData怎么用?Java Op.setData使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.zookeeper.Op的用法示例。


在下文中一共展示了Op.setData方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: toZooKeeperOp

import org.apache.zookeeper.Op; //导入方法依赖的package包/类
/**
 * Convert from ZKUtilOp to ZKOp
 */
private static Op toZooKeeperOp(ZooKeeperWatcher zkw, ZKUtilOp op)
throws UnsupportedOperationException {
  if(op == null) return null;

  if (op instanceof CreateAndFailSilent) {
    CreateAndFailSilent cafs = (CreateAndFailSilent)op;
    return Op.create(cafs.getPath(), cafs.getData(), createACL(zkw, cafs.getPath()),
      CreateMode.PERSISTENT);
  } else if (op instanceof DeleteNodeFailSilent) {
    DeleteNodeFailSilent dnfs = (DeleteNodeFailSilent)op;
    return Op.delete(dnfs.getPath(), -1);
  } else if (op instanceof SetData) {
    SetData sd = (SetData)op;
    return Op.setData(sd.getPath(), sd.getData(), -1);
  } else {
    throw new UnsupportedOperationException("Unexpected ZKUtilOp type: "
      + op.getClass().getName());
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:23,代码来源:ZKUtil.java

示例2: storeMaxTxId

import org.apache.zookeeper.Op; //导入方法依赖的package包/类
void storeMaxTxId(final ZKTransaction txn,
                  final MaxTxId maxTxId,
                  final long txId) {
    byte[] data = maxTxId.couldStore(txId);
    if (null != data) {
        Op zkOp = Op.setData(maxTxId.getZkPath(), data, -1);
        txn.addOp(new ZKVersionedSetOp(zkOp, new Transaction.OpListener<Version>() {
            @Override
            public void onCommit(Version version) {
                maxTxId.setMaxTxId(txId);
            }

            @Override
            public void onAbort(Throwable t) {

            }
        }));
    }
}
 
开发者ID:twitter,项目名称:distributedlog,代码行数:20,代码来源:BKLogWriteHandler.java

示例3: storeMaxSequenceNumber

import org.apache.zookeeper.Op; //导入方法依赖的package包/类
void storeMaxSequenceNumber(final Transaction txn,
                            final MaxLogSegmentSequenceNo maxSeqNo,
                            final long seqNo,
                            final boolean isInprogress) {
    byte[] data = DLUtils.serializeLogSegmentSequenceNumber(seqNo);
    Op zkOp = Op.setData(logMetadata.getLogSegmentsPath(), data, maxSeqNo.getZkVersion());
    txn.addOp(new ZKVersionedSetOp(zkOp, new Transaction.OpListener<Version>() {
        @Override
        public void onCommit(Version version) {
            if (validateLogSegmentSequenceNumber) {
                synchronized (inprogressLSSNs) {
                    if (isInprogress) {
                        inprogressLSSNs.add(seqNo);
                    } else {
                        inprogressLSSNs.removeFirst();
                    }
                }
            }
            maxSeqNo.update((ZkVersion) version, seqNo);
        }

        @Override
        public void onAbort(Throwable t) {
            // no-op
        }
    }));
}
 
开发者ID:twitter,项目名称:distributedlog,代码行数:28,代码来源:BKLogWriteHandler.java

示例4: storeMaxLogSegmentSequenceNumber

import org.apache.zookeeper.Op; //导入方法依赖的package包/类
@Override
public void storeMaxLogSegmentSequenceNumber(Transaction<Object> txn,
                                             String path,
                                             Versioned<Long> lssn,
                                             Transaction.OpListener<Version> listener) {
    Version version = lssn.getVersion();
    assert(version instanceof ZkVersion);

    ZkVersion zkVersion = (ZkVersion) version;
    byte[] data = DLUtils.serializeLogSegmentSequenceNumber(lssn.getValue());
    Op setDataOp = Op.setData(path, data, zkVersion.getZnodeVersion());
    ZKOp zkOp = new ZKVersionedSetOp(setDataOp, listener);
    txn.addOp(zkOp);
}
 
开发者ID:twitter,项目名称:distributedlog,代码行数:15,代码来源:ZKLogSegmentMetadataStore.java

示例5: storeMaxTxnId

import org.apache.zookeeper.Op; //导入方法依赖的package包/类
@Override
public void storeMaxTxnId(Transaction<Object> txn,
                          String path,
                          Versioned<Long> transactionId,
                          Transaction.OpListener<Version> listener) {
    Version version = transactionId.getVersion();
    assert(version instanceof ZkVersion);

    ZkVersion zkVersion = (ZkVersion) version;
    byte[] data = DLUtils.serializeTransactionId(transactionId.getValue());
    Op setDataOp = Op.setData(path, data, zkVersion.getZnodeVersion());
    ZKOp zkOp = new ZKVersionedSetOp(setDataOp, listener);
    txn.addOp(zkOp);
}
 
开发者ID:twitter,项目名称:distributedlog,代码行数:15,代码来源:ZKLogSegmentMetadataStore.java

示例6: updateLogSegment

import org.apache.zookeeper.Op; //导入方法依赖的package包/类
@Override
public void updateLogSegment(Transaction<Object> txn, LogSegmentMetadata segment) {
    byte[] finalisedData = segment.getFinalisedData().getBytes(UTF_8);
    Op updateOp = Op.setData(segment.getZkPath(), finalisedData, -1);
    txn.addOp(DefaultZKOp.of(updateOp));
}
 
开发者ID:twitter,项目名称:distributedlog,代码行数:7,代码来源:ZKLogSegmentMetadataStore.java


注:本文中的org.apache.zookeeper.Op.setData方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。