| /** |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| module org.apache.zookeeper.data { |
| class Id { |
| ustring scheme; |
| ustring id; |
| } |
| class ACL { |
| int perms; |
| Id id; |
| } |
| // information shared with the client |
| class Stat { |
| long czxid; // created zxid |
| long mzxid; // last modified zxid |
| long ctime; // created |
| long mtime; // last modified |
| int version; // version |
| int cversion; // child version |
| int aversion; // acl version |
| long ephemeralOwner; // owner id if ephemeral, 0 otw |
| int dataLength; //length of the data in the node |
| int numChildren; //number of children of this node |
| long pzxid; // last modified children |
| } |
| // information explicitly stored by the server persistently |
| class StatPersisted { |
| long czxid; // created zxid |
| long mzxid; // last modified zxid |
| long ctime; // created |
| long mtime; // last modified |
| int version; // version |
| int cversion; // child version |
| int aversion; // acl version |
| long ephemeralOwner; // owner id if ephemeral, 0 otw |
| long pzxid; // last modified children |
| } |
| |
| // information explicitly stored by the version 1 database of servers |
| class StatPersistedV1 { |
| long czxid; //created zxid |
| long mzxid; //last modified zxid |
| long ctime; //created |
| long mtime; //last modified |
| int version; //version |
| int cversion; //child version |
| int aversion; //acl version |
| long ephemeralOwner; //owner id if ephemeral. 0 otw |
| } |
| } |
| |
| module org.apache.zookeeper.proto { |
| class op_result_t { |
| int rc; |
| int op; |
| buffer response; |
| } |
| |
| class ConnectRequest { |
| int protocolVersion; |
| long lastZxidSeen; |
| int timeOut; |
| long sessionId; |
| buffer passwd; |
| } |
| class ConnectResponse { |
| int protocolVersion; |
| int timeOut; |
| long sessionId; |
| buffer passwd; |
| } |
| class SetWatches { |
| long relativeZxid; |
| vector<ustring>dataWatches; |
| vector<ustring>existWatches; |
| vector<ustring>childWatches; |
| } |
| class RequestHeader { |
| int xid; |
| int type; |
| } |
| class AuthPacket { |
| int type; |
| ustring scheme; |
| buffer auth; |
| } |
| class ReplyHeader { |
| int xid; |
| long zxid; |
| int err; |
| } |
| class GetDataRequest { |
| ustring path; |
| boolean watch; |
| } |
| class SetDataRequest { |
| ustring path; |
| buffer data; |
| int version; |
| } |
| class SetDataResponse { |
| org.apache.zookeeper.data.Stat stat; |
| } |
| class CreateRequest { |
| ustring path; |
| buffer data; |
| vector<org.apache.zookeeper.data.ACL> acl; |
| int flags; |
| } |
| class DeleteRequest { |
| ustring path; |
| int version; |
| } |
| class GetChildrenRequest { |
| ustring path; |
| boolean watch; |
| } |
| class GetMaxChildrenRequest { |
| ustring path; |
| } |
| class GetMaxChildrenResponse { |
| int max; |
| } |
| class SetMaxChildrenRequest { |
| ustring path; |
| int max; |
| } |
| class SyncRequest { |
| ustring path; |
| } |
| class SyncResponse { |
| ustring path; |
| } |
| class GetACLRequest { |
| ustring path; |
| } |
| class SetACLRequest { |
| ustring path; |
| vector<org.apache.zookeeper.data.ACL> acl; |
| int version; |
| } |
| class SetACLResponse { |
| org.apache.zookeeper.data.Stat stat; |
| } |
| class WatcherEvent { |
| int type; // event type |
| int state; // state of the Keeper client runtime |
| ustring path; |
| } |
| |
| class CreateResponse { |
| ustring path; |
| } |
| class ExistsRequest { |
| ustring path; |
| boolean watch; |
| } |
| class ExistsResponse { |
| org.apache.zookeeper.data.Stat stat; |
| } |
| class GetDataResponse { |
| buffer data; |
| org.apache.zookeeper.data.Stat stat; |
| } |
| class GetChildrenResponse { |
| vector<ustring>children; |
| } |
| class GetACLResponse { |
| vector<org.apache.zookeeper.data.ACL> acl; |
| org.apache.zookeeper.data.Stat stat; |
| } |
| } |
| |
| module org.apache.zookeeper.server.quorum { |
| class QuorumPacket { |
| int type; // Request, Ack, Commit, Ping |
| long zxid; |
| buffer data; // Only significant when type is request |
| vector<org.apache.zookeeper.data.Id> authinfo; |
| } |
| } |
| |
| module org.apache.zookeeper.server.persistence { |
| class FileHeader { |
| int magic; |
| int version; |
| long dbid; |
| } |
| } |
| |
| module org.apache.zookeeper.txn { |
| class TxnHeader { |
| long clientId; |
| int cxid; |
| long zxid; |
| long time; |
| int type; |
| } |
| class CreateTxn { |
| ustring path; |
| buffer data; |
| vector<org.apache.zookeeper.data.ACL> acl; |
| boolean ephemeral; |
| } |
| class DeleteTxn { |
| ustring path; |
| } |
| class SetDataTxn { |
| ustring path; |
| buffer data; |
| int version; |
| } |
| class SetACLTxn { |
| ustring path; |
| vector<org.apache.zookeeper.data.ACL> acl; |
| int version; |
| } |
| class SetMaxChildrenTxn { |
| ustring path; |
| int max; |
| } |
| class CreateSessionTxn { |
| int timeOut; |
| } |
| class ErrorTxn { |
| int err; |
| } |
| } |