java.1.2.1.source-code.DaosObjectAttribute.proto Maven / Gradle / Ivy
syntax = "proto3";
package objattr;
option java_package = "io.daos.obj.attr";
option java_outer_classname = "DaosObjAttrClasses";
option java_multiple_files = true;
enum DaosObjSchema {
DAOS_OS_SINGLE = 0; /**< Single stripe object */
DAOS_OS_STRIPED = 1; /**< Fix striped object */
DAOS_OS_DYN_STRIPED = 2; /**< Dynamically striped object */
DAOS_OS_DYN_CHUNKED = 3; /**< Dynamically chunked object */
}
enum DaosObjResil {
DAOS_RES_EC = 0; /**< Erasure code */
DAOS_RES_REPL = 1; /**< Replication */
}
message DaosRpAttr {
uint32 r_proto = 1;
uint32 r_num = 2;
}
message DaosEcAttr {
uint32 e_k = 1;
uint32 e_p = 2;
uint32 e_len = 3;
}
message DaosOclassAttr {
DaosObjSchema ca_schema = 1;
DaosObjResil ca_resil = 2;
uint32 ca_resil_degree = 3;
uint32 ca_grp_nr = 4;
oneof u {
DaosRpAttr rp = 5;
DaosEcAttr ec = 6;
}
}
message DaosObjectAttribute {
uint32 oa_rank = 1;
DaosOclassAttr oa_oa = 2;
}