hadoop/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/xattr.proto

80 lines
2.0 KiB
Protocol Buffer

/**
* 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.
*/
option java_package = "org.apache.hadoop.hdfs.protocol.proto";
option java_outer_classname = "XAttrProtos";
option java_generate_equals_and_hash = true;
package hadoop.hdfs;
message XAttrProto {
enum XAttrNamespaceProto {
USER = 0;
TRUSTED = 1;
SECURITY = 2;
SYSTEM = 3;
}
required XAttrNamespaceProto namespace = 1;
required string name = 2;
optional bytes value = 3;
}
message XAttrEditLogProto {
optional string src = 1;
repeated XAttrProto xAttrs = 2;
}
enum XAttrSetFlagProto {
XATTR_CREATE = 0x01;
XATTR_REPLACE = 0x02;
}
message SetXAttrRequestProto {
required string src = 1;
optional XAttrProto xAttr = 2;
optional uint32 flag = 3; //bits set using XAttrSetFlagProto
}
message SetXAttrResponseProto {
}
message GetXAttrsRequestProto {
required string src = 1;
repeated XAttrProto xAttrs = 2;
}
message GetXAttrsResponseProto {
repeated XAttrProto xAttrs = 1;
}
message ListXAttrsRequestProto {
required string src = 1;
}
message ListXAttrsResponseProto {
repeated XAttrProto xAttrs = 1;
}
message RemoveXAttrRequestProto {
required string src = 1;
optional XAttrProto xAttr = 2;
}
message RemoveXAttrResponseProto {
}