class ProjectConfig(TlvModel): project_id = BytesField(0x80) description = BytesField(0x90) inherit_from = BytesField(0x91) sync_interval = UintField(0x92) ref_configs = RepeatedField(ModelField(0x93, RefConfig)) labels = RepeatedField(ModelField(0x94, LabelConfig))
class RepoCommandParameter(TlvModel): name = NameField() forwarding_hint = ModelField(RepoTypeNumber.FORWARDING_HINT, ForwardingHint) start_block_id = UintField(RepoTypeNumber.START_BLOCK_ID) end_block_id = UintField(RepoTypeNumber.END_BLOCK_ID) process_id = BytesField(RepoTypeNumber.PROCESS_ID) register_prefix = ModelField(RepoTypeNumber.REGISTER_PREFIX, RegisterPrefix) check_prefix = ModelField(RepoTypeNumber.CHECK_PREFIX, CheckPrefix)
class NotifyAppParam(TlvModel): """ Used to serialize application parameters for PubSub notify interest. """ publisher_prefix = NameField() notify_nonce = BytesField(128) publisher_fwd_hint = ModelField(211, ForwardingHint)
class Model(TlvModel): name = NameField() int_val = UintField(0x03) bytes_val = BytesField(0x02) bool_val = BoolField(0x01) array = ModelField(0x05, WordArray) flag_val = UintField(0x06, val_base_type=FlagVal) enum_arr = RepeatedField(UintField(0x07, val_base_type=EnumVal)) str_val = BytesField(0x08, is_string=True) str_arr = RepeatedField(BytesField(0x09, is_string=True))
class GitObject(TlvModel): _signer = ProcedureArgument() _sig_cover_part = ProcedureArgument() _sig_value_buf = ProcedureArgument() _shrink_len = ProcedureArgument(0) _sig_cover_start = OffsetMarker() project_config = ModelField(0xf0, ProjectConfig) account_config = ModelField(0xf1, AccountConfig) key_revocation = ModelField(0xf2, KeyRevocation) group_config = ModelField(0xf3, GroupConfig) head_ref = ModelField(0xf4, HeadRef) change_meta = ModelField(0xf5, ChangeMeta) vote = ModelField(0xf6, Vote) comment = ModelField(0xf7, Comment) catalog = ModelField(0xf8, Catalog) signature_info = ModelField(0xe0, SignatureInfo) signature_value = SignatureValueField(0xe1, signer=_signer, covered_part=_sig_cover_part, starting_point=_sig_cover_start, value_buffer=_sig_value_buf, shrink_len=_shrink_len)
class DeviceList(TlvModel): device = RepeatedField(ModelField(1, DeviceItem))
class SharedSecrets(TlvModel): shared_secrets = RepeatedField(ModelField(1, SharedSecretsItem))
class AccessList(TlvModel): access = RepeatedField(ModelField(1, AccessItem))
class ServiceList(TlvModel): service = RepeatedField(ModelField(1, ServiceItem))
class ServiceList(TlvModel): services = RepeatedField(ModelField(1, ServiceItem)) service_meta_items = RepeatedField(ModelField(2, ServiceMetaItem))
class LabelConfig(TlvModel): label = BytesField(0x98) function = UintField(0x99) default_value = UintField(0x9a) values = RepeatedField(ModelField(0x9b, LabelValue))
class RefConfig(TlvModel): ref_name = BytesField(0x95) operation_rules = RepeatedField(ModelField(0x96, OperationRule)) label_rules = RepeatedField(ModelField(0x97, LabelRule))
class Outer(TlvModel): val = ModelField(0x02, Inner)
class B2(B1): IncludeBase(B1) a = ModelField(0x03, A2)
class B1(TlvModel): a = ModelField(0x03, A1)
class Model(TlvModel): name = NameField() int_val = UintField(0x03) str_val = BytesField(0x02) bool_val = BoolField(0x01) array = ModelField(0x05, WordArray)