diff --git a/manifests/pathcompservice.yaml b/manifests/pathcompservice.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b5316e22f1eefd4177ae33f4fc89da256f65bff8 --- /dev/null +++ b/manifests/pathcompservice.yaml @@ -0,0 +1,64 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: pathcompservice +spec: + selector: + matchLabels: + app: pathcompservice + template: + metadata: + labels: + app: pathcompservice + spec: + terminationGracePeriodSeconds: 5 + containers: + - name: server + image: registry.gitlab.com/teraflow-h2020/controller/pathcomp:latest + imagePullPolicy: Always + ports: + - containerPort: 10020 + env: + - name: LOG_LEVEL + value: "INFO" + readinessProbe: + exec: + command: ["/bin/grpc_health_probe", "-addr=:10020"] + livenessProbe: + exec: + command: ["/bin/grpc_health_probe", "-addr=:10020"] + resources: + requests: + cpu: 250m + memory: 512Mi + limits: + cpu: 700m + memory: 1024Mi +--- +apiVersion: v1 +kind: Service +metadata: + name: pathcompservice +spec: + type: ClusterIP + selector: + app: pathcompservice + ports: + - name: grpc + protocol: TCP + port: 10020 + targetPort: 10020 diff --git a/proto/.gitignore b/proto/.gitignore index 79d17a55d24e501e34b462c9005e8e5429fc43ba..d1dea37b3a85abaa18b5bd65d3ec0e1d3c6fe9b6 100644 --- a/proto/.gitignore +++ b/proto/.gitignore @@ -1,2 +1,7 @@ -src/ +src/*/* + +# used to prevent breaking symbolic links from source code folders +!src/*/.gitignore +!src/python/__init__.py + uml/generated diff --git a/proto/acl.proto b/proto/acl.proto new file mode 100644 index 0000000000000000000000000000000000000000..d3717e9c4cdcf978324d08757b260ab1e9be028a --- /dev/null +++ b/proto/acl.proto @@ -0,0 +1,69 @@ +// Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +// +// Licensed 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. + +syntax = "proto3"; +package acl; + +enum AclRuleTypeEnum { + ACLRULETYPE_UNDEFINED = 0; + ACLRULETYPE_IPV4 = 1; + ACLRULETYPE_IPV6 = 2; + ACLRULETYPE_L2 = 3; + ACLRULETYPE_MPLS = 4; + ACLRULETYPE_MIXED = 5; +} + +enum AclForwardActionEnum { + ACLFORWARDINGACTION_UNDEFINED = 0; + ACLFORWARDINGACTION_DROP = 1; + ACLFORWARDINGACTION_ACCEPT = 2; + ACLFORWARDINGACTION_REJECT = 3; +} + +enum AclLogActionEnum { + ACLLOGACTION_UNDEFINED = 0; + ACLLOGACTION_NOLOG = 1; + ACLLOGACTION_SYSLOG = 2; +} + +message AclMatch { + uint32 dscp = 1; + uint32 protocol = 2; + string src_address = 3; + string dst_address = 4; + uint32 src_port = 5; + uint32 dst_port = 6; + uint32 start_mpls_label = 7; + uint32 end_mpls_label = 8; +} + +message AclAction { + AclForwardActionEnum forward_action = 1; + AclLogActionEnum log_action = 2; +} + +message AclEntry { + uint32 sequence_id = 1; + string description = 2; + AclMatch match = 3; + AclAction action = 4; +} + +message AclRuleSet { + string name = 1; + AclRuleTypeEnum type = 2; + string description = 3; + string user_id = 4; + repeated AclEntry entries = 5; +} diff --git a/proto/context-policy.proto b/proto/context-policy.proto new file mode 100644 index 0000000000000000000000000000000000000000..9fe25dec5205b66f6d622df2f9435c1321f7e45e --- /dev/null +++ b/proto/context-policy.proto @@ -0,0 +1,28 @@ +// Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +// +// Licensed 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. + +syntax = "proto3"; +package context_policy; + +import "context.proto"; +import "policy.proto"; + +// created as a separate service to prevent import-loops in context and policy +service ContextPolicyService { + rpc ListPolicyRuleIds(context.Empty ) returns (policy.PolicyRuleIdList) {} + rpc ListPolicyRules (context.Empty ) returns (policy.PolicyRuleList ) {} + rpc GetPolicyRule (policy.PolicyRuleId ) returns (policy.PolicyRuleBasic ) {} + rpc SetPolicyRule (policy.PolicyRuleBasic) returns (policy.PolicyRuleId ) {} + rpc RemovePolicyRule (policy.PolicyRuleId ) returns (context.Empty ) {} +} diff --git a/proto/context.proto b/proto/context.proto index bc0bfa0c6d41c6eb3474f69c05f87cc456269c66..944cc0ef59d76de7bffb9c181a0ee61af61e73e3 100644 --- a/proto/context.proto +++ b/proto/context.proto @@ -15,6 +15,7 @@ syntax = "proto3"; package context; +import "acl.proto"; import "kpi_sample_types.proto"; service ContextService { @@ -82,8 +83,12 @@ enum EventTypeEnum { EVENTTYPE_REMOVE = 3; } -message Event { +message Timestamp { double timestamp = 1; +} + +message Event { + Timestamp timestamp = 1; EventTypeEnum event_type = 2; } @@ -223,6 +228,7 @@ message Service { repeated Constraint service_constraints = 4; ServiceStatus service_status = 5; ServiceConfig service_config = 6; + Timestamp timestamp = 7; } enum ServiceTypeEnum { @@ -237,6 +243,7 @@ enum ServiceStatusEnum { SERVICESTATUS_PLANNED = 1; SERVICESTATUS_ACTIVE = 2; SERVICESTATUS_PENDING_REMOVAL = 3; + SERVICESTATUS_SLA_VIOLATED = 4; } message ServiceStatus { @@ -273,6 +280,13 @@ message Slice { repeated ServiceId slice_service_ids = 4; repeated SliceId slice_subslice_ids = 5; SliceStatus slice_status = 6; + SliceOwner slice_owner = 7; + Timestamp timestamp = 8; +} + +message SliceOwner { + Uuid owner_uuid = 1; + string owner_string = 2; } enum SliceStatusEnum { @@ -281,6 +295,7 @@ enum SliceStatusEnum { SLICESTATUS_INIT = 2; SLICESTATUS_ACTIVE = 3; SLICESTATUS_DEINIT = 4; + SLICESTATUS_SLA_VIOLATED = 5; } message SliceStatus { @@ -305,11 +320,47 @@ message ConnectionId { Uuid connection_uuid = 1; } +message ConnectionSettings_L0 { + string lsp_symbolic_name = 1; +} + +message ConnectionSettings_L2 { + string src_mac_address = 1; + string dst_mac_address = 2; + uint32 ether_type = 3; + uint32 vlan_id = 4; + uint32 mpls_label = 5; + uint32 mpls_traffic_class = 6; +} + +message ConnectionSettings_L3 { + string src_ip_address = 1; + string dst_ip_address = 2; + uint32 dscp = 3; + uint32 protocol = 4; + uint32 ttl = 5; +} + +message ConnectionSettings_L4 { + uint32 src_port = 1; + uint32 dst_port = 2; + uint32 tcp_flags = 3; + uint32 ttl = 4; +} + +message ConnectionSettings { + ConnectionSettings_L0 l0 = 1; + ConnectionSettings_L2 l2 = 2; + ConnectionSettings_L3 l3 = 3; + ConnectionSettings_L4 l4 = 4; +} + message Connection { ConnectionId connection_id = 1; ServiceId service_id = 2; repeated EndPointId path_hops_endpoint_ids = 3; repeated ServiceId sub_service_ids = 4; + ConnectionSettings settings = 5; } message ConnectionIdList { @@ -337,6 +388,7 @@ message EndPoint { EndPointId endpoint_id = 1; string endpoint_type = 2; repeated kpi_sample_types.KpiSampleType kpi_sample_types = 3; + Location endpoint_location = 4; } @@ -347,19 +399,94 @@ enum ConfigActionEnum { CONFIGACTION_DELETE = 2; } +message ConfigRule_Custom { + string resource_key = 1; + string resource_value = 2; +} + +message ConfigRule_ACL { + EndPointId endpoint_id = 1; + acl.AclRuleSet rule_set = 2; +} + message ConfigRule { ConfigActionEnum action = 1; - string resource_key = 2; - string resource_value = 3; + oneof config_rule { + ConfigRule_Custom custom = 2; + ConfigRule_ACL acl = 3; + } } // ----- Constraint ---------------------------------------------------------------------------------------------------- -message Constraint { +message Constraint_Custom { string constraint_type = 1; string constraint_value = 2; } +message Constraint_Schedule { + float start_timestamp = 1; + float duration_days = 2; +} + +message GPS_Position { + float latitude = 1; + float longitude = 2; +} + +message Location { + oneof location { + string region = 1; + GPS_Position gps_position = 2; + } +} + +message Constraint_EndPointLocation { + EndPointId endpoint_id = 1; + Location location = 2; +} + +message Constraint_SLA_Latency { + float e2e_latency_ms = 1; +} + +message Constraint_SLA_Capacity { + float capacity_gbps = 1; +} + +message Constraint_SLA_Availability { + uint32 num_disjoint_paths = 1; + bool all_active = 2; +} + +enum IsolationLevelEnum { + NO_ISOLATION = 0; + PHYSICAL_ISOLATION = 1; + LOGICAL_ISOLATION = 2; + PROCESS_ISOLATION = 3; + PHYSICAL_MEMORY_ISOLATION = 4; + PHYSICAL_NETWORK_ISOLATION = 5; + VIRTUAL_RESOURCE_ISOLATION = 6; + NETWORK_FUNCTIONS_ISOLATION = 7; + SERVICE_ISOLATION = 8; +} + +message Constraint_SLA_Isolation_level { + IsolationLevelEnum isolation_level = 1; +} + +message Constraint { + oneof constraint { + Constraint_Custom custom = 1; + Constraint_Schedule schedule = 2; + Constraint_EndPointLocation endpoint_location = 3; + Constraint_SLA_Capacity sla_capacity = 4; + Constraint_SLA_Latency sla_latency = 5; + Constraint_SLA_Availability sla_availability = 6; + Constraint_SLA_Isolation_level sla_isolation = 7; + } +} + // ----- Miscellaneous ------------------------------------------------------------------------------------------------- message TeraFlowController { diff --git a/proto/dlt_connector.proto b/proto/dlt_connector.proto new file mode 100644 index 0000000000000000000000000000000000000000..c8cbeb663fafb3c133092e9c49c2ece3f59d75ae --- /dev/null +++ b/proto/dlt_connector.proto @@ -0,0 +1,31 @@ +// Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +// +// Licensed 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. + +syntax = "proto3"; +package dlt; + +import "context.proto"; + +service DltConnectorService { + rpc RecordAll (context.Empty ) returns (context.Empty) {} + + rpc RecordAllDevices (context.Empty ) returns (context.Empty) {} + rpc RecordDevice (context.DeviceId ) returns (context.Empty) {} + + rpc RecordAllServices(context.Empty ) returns (context.Empty) {} + rpc RecordService (context.ServiceId) returns (context.Empty) {} + + rpc RecordAllSlices (context.Empty ) returns (context.Empty) {} + rpc RecordSlice (context.SliceId ) returns (context.Empty) {} +} diff --git a/proto/dlt.proto b/proto/dlt_gateway.proto similarity index 99% rename from proto/dlt.proto rename to proto/dlt_gateway.proto index 44fb9478fc49d612edfb7c801d79056c28104344..b2c1297ccdd4c765862f4643b554d5373d8eccd3 100644 --- a/proto/dlt.proto +++ b/proto/dlt_gateway.proto @@ -17,7 +17,7 @@ package dlt; import "context.proto"; -service DltService { +service DltGatewayService { rpc RecordToDlt (DltRecord ) returns ( DltRecordStatus ) {} rpc GetFromDlt (DltRecordId ) returns ( DltRecord ) {} rpc SubscribeToDlt(DltRecordSubscription ) returns (stream DltRecordEvent ) {} diff --git a/proto/forecaster.proto b/proto/forecaster.proto new file mode 100644 index 0000000000000000000000000000000000000000..576afb101ea4c8d733f3adf37fdf061e44b390eb --- /dev/null +++ b/proto/forecaster.proto @@ -0,0 +1,45 @@ +// Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +// +// Licensed 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. + +syntax = "proto3"; +package forecaster; + +import "context.proto"; + +service ForecasterService { + rpc GetForecastOfTopology (context.TopologyId) returns (Forecast) {} + rpc GetForecastOfLink(context.LinkId) returns (Forecast) {} + rpc CheckService (context.ServiceId) returns (ForecastPrediction) {} +} + +message SingleForecast { + context.Timestamp timestamp= 1; + double value = 2; +} + +message Forecast { + oneof uuid { + context.TopologyId topologyId= 1; + context.LinkId linkId = 2; + } + repeated SingleForecast forecast = 3; +} + +enum AvailabilityPredictionEnum { + FORECASTED_AVAILABILITY = 0; + FORECASTED_UNAVAILABILITY = 1; +} +message ForecastPrediction { + AvailabilityPredictionEnum prediction = 1; +} diff --git a/proto/generate_code_python.sh b/proto/generate_code_python.sh new file mode 100755 index 0000000000000000000000000000000000000000..b0df357eb079fb2721cffca43465588f7013e341 --- /dev/null +++ b/proto/generate_code_python.sh @@ -0,0 +1,42 @@ +#!/bin/bash -eu +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +# Make folder containing the script the root folder for its execution +cd $(dirname $0) + +mkdir -p src/python +rm -rf src/python/*.py + +tee src/python/__init__.py << EOF > /dev/null +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. +EOF + +# Generate Python code +python3 -m grpc_tools.protoc -I=./ --python_out=src/python/ --grpc_python_out=src/python/ *.proto + +# Arrange generated code imports to enable imports from arbitrary subpackages +find src/python -type f -iname *.py -exec sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' {} \; diff --git a/proto/compile.sh b/proto/generate_uml.sh similarity index 89% rename from proto/compile.sh rename to proto/generate_uml.sh index 520ead69a95cdfd1a076aee221d672f81810b5f0..6f20b6f4cf695274fe5d6ed27e57671196c44b70 100755 --- a/proto/compile.sh +++ b/proto/generate_uml.sh @@ -13,12 +13,9 @@ # See the License for the specific language governing permissions and # limitations under the License. -python3 -m grpc_tools.protoc -I=./ --python_out=../src/ --grpc_python_out=../src/ *.proto #requires installation of protoc-gen-uml export PATH=${HOME}/protoc-gen-uml/target/universal/stage/bin:$PATH protoc --uml_out=uml/ -I ./ *.proto cd uml java -jar plantuml.7997.jar *.puml rm *.puml - - diff --git a/proto/interdomain.proto b/proto/interdomain.proto index 735d4c1cd3ec92de41a0a0a1bc91de6acc846cd9..b8a31c2498a216e183aecbb975821d5c0ec25885 100644 --- a/proto/interdomain.proto +++ b/proto/interdomain.proto @@ -18,9 +18,11 @@ package interdomain; import "context.proto"; service InterdomainService { - rpc Authenticate (context.TeraFlowController) returns (context.AuthenticationResult) {} + rpc Authenticate (context.TeraFlowController) returns (context.AuthenticationResult) {} // Deprecated rpc RequestSlice (context.Slice ) returns (context.SliceId ) {} rpc LookUpSlice (context.Slice ) returns (context.SliceId ) {} rpc OrderSliceFromCatalog (context.Slice ) returns (context.Slice ) {} rpc CreateSliceAndAddToCatalog(context.Slice ) returns (context.Slice ) {} + rpc OrderSliceWithSLA (context.Slice) returns (context.SliceId) {} // If slice with SLA already exists, returns slice. If not, it creates it. + rpc UpdateSlice (context.Slice ) returns (context.Slice ) {} } diff --git a/proto/monitoring.proto b/proto/monitoring.proto index 293eb982a758e9869d8310134bd65bca6c8dfd32..2c7b98d2ca3392906e0f42896907bb887b45e80b 100644 --- a/proto/monitoring.proto +++ b/proto/monitoring.proto @@ -19,27 +19,73 @@ import "context.proto"; import "kpi_sample_types.proto"; service MonitoringService { - rpc CreateKpi (KpiDescriptor ) returns (KpiId ) {} - rpc GetKpiDescriptor(KpiId ) returns (KpiDescriptor) {} - rpc IncludeKpi (Kpi ) returns (context.Empty) {} - rpc MonitorKpi (MonitorKpiRequest) returns (context.Empty) {} - rpc GetStreamKpi (KpiId ) returns (stream Kpi ) {} - rpc GetInstantKpi (KpiId ) returns (Kpi ) {} + rpc CreateKpi (KpiDescriptor ) returns (KpiId ) {} + rpc EditKpiDescriptor (EditedKpiDescriptor ) returns (context.Empty ) {} + rpc DeleteKpi (KpiId ) returns (context.Empty ) {} + rpc GetKpiDescriptorList (context.Empty ) returns (KpiDescriptorList) {} + rpc CreateBundleKpi (BundleKpiDescriptor ) returns (KpiId ) {} + rpc GetKpiDescriptor (KpiId ) returns (KpiDescriptor ) {} + rpc IncludeKpi (Kpi ) returns (context.Empty ) {} + rpc MonitorKpi (MonitorKpiRequest ) returns (context.Empty ) {} + rpc QueryKpiData (KpiQuery ) returns (KpiList ) {} + rpc SubscribeKpi (SubsDescriptor ) returns (stream KpiList ) {} + rpc GetSubsDescriptor (SubscriptionID ) returns (SubsDescriptor ) {} + rpc GetSubscriptions (context.Empty ) returns (SubsIDList ) {} + rpc EditKpiSubscription (SubsDescriptor ) returns (context.Empty ) {} + rpc CreateKpiAlarm (AlarmDescriptor ) returns ( AlarmID ) {} + rpc EditKpiAlarm (AlarmDescriptor ) returns (context.Empty ) {} + rpc GetAlarms (context.Empty ) returns (AlarmIDList ) {} + rpc GetAlarmDescriptor (AlarmID ) returns (AlarmDescriptor ) {} + rpc GetAlarmResponseStream (AlarmID ) returns (stream AlarmResponse ) {} + // rpc GetStreamKpi (KpiId ) returns (stream Kpi ) {} + // rpc GetInstantKpi (KpiId ) returns (KpiList ) {} } message KpiDescriptor { - string kpi_description = 1; - kpi_sample_types.KpiSampleType kpi_sample_type = 2; - context.DeviceId device_id = 3; - context.EndPointId endpoint_id = 4; - context.ServiceId service_id = 5; -// context.SliceId slice_id = 6; + string kpi_description = 1; + kpi_sample_types.KpiSampleType kpi_sample_type = 2; + context.DeviceId device_id = 3; + context.EndPointId endpoint_id = 4; + context.ServiceId service_id = 5; + context.SliceId slice_id = 6; } -message MonitorKpiRequest{ - KpiId kpi_id = 1; - float sampling_duration_s = 2; - float sampling_interval_s = 3; +message BundleKpiDescriptor { + string kpi_description = 1; + repeated KpiId kpi_id_list = 2; + kpi_sample_types.KpiSampleType kpi_sample_type = 3; + context.DeviceId device_id = 4; + context.EndPointId endpoint_id = 5; + context.ServiceId service_id = 6; + context.SliceId slice_id = 7; +} + +message EditedKpiDescriptor { + KpiId kpi_id = 1; + string kpi_description = 2; + repeated KpiId kpi_id_list = 3; + kpi_sample_types.KpiSampleType kpi_sample_type = 4; + context.DeviceId device_id = 5; + context.EndPointId endpoint_id = 6; + context.ServiceId service_id = 7; + context.SliceId slice_id = 8; +} + +message MonitorKpiRequest { + KpiId kpi_id = 1; + float monitoring_window_s = 2; + float sampling_rate_s = 3; + // Pending add field to reflect Available Device Protocols +} + +message KpiQuery { + repeated KpiId kpi_id = 1; + float monitoring_window_s = 2; + float sampling_rate_s = 3; + uint32 last_n_samples = 4; // used when you want something like "get the last N many samples + string start_date = 5; // used when you want something like "get the samples since X date/time" + string end_date = 6; // used when you want something like "get the samples until X date/time" + // Pending add field to reflect Available Device Protocols } message KpiId { @@ -47,20 +93,73 @@ message KpiId { } message Kpi { - KpiId kpi_id = 1; - string timestamp = 2; - KpiValue kpi_value = 4; + KpiId kpi_id = 1; + string timestamp = 2; + KpiValue kpi_value = 3; +} + +message KpiValueRange { + KpiValue kpiMinValue = 1; + KpiValue kpiMaxValue = 2; } message KpiValue { oneof value { - uint32 intVal = 1; - float floatVal = 2; - string stringVal = 3; - bool boolVal = 4; + uint32 intVal = 1; + float floatVal = 2; + string stringVal = 3; + bool boolVal = 4; } } message KpiList { - repeated Kpi kpi_list = 1; + repeated Kpi kpi_list = 1; +} + +message KpiDescriptorList { + repeated KpiDescriptor kpi_descriptor_list = 1; +} + +message SubsDescriptor{ + KpiId kpi_id = 1; + float sampling_duration_s = 2; + float sampling_interval_s = 3; + string start_date = 4; // used when you want something like "get the samples since X date/time" + string end_date = 5; // used when you want something like "get the samples until X date/time" + // Pending add field to reflect Available Device Protocols +} + +message SubscriptionID { + context.Uuid subs_id = 1; +} + +message SubsResponse { + SubscriptionID subs_id = 1; + repeated KpiList kpi_list = 2; +} + +message SubsIDList { + repeated SubscriptionID subs_list = 1; +} + +message AlarmDescriptor { + string alarm_description = 1; + string name = 2; + KpiId kpi_id = 3; + KpiValueRange kpi_value_range = 4; + string timestamp = 5; +} + +message AlarmID{ + context.Uuid alarm_id = 1; +} + +message AlarmResponse { + AlarmID alarm_id = 1; + string text = 2; + KpiValue kpi_value = 3; +} + +message AlarmIDList { + repeated AlarmID alarm_list = 1; } diff --git a/proto/pathcomp.proto b/proto/pathcomp.proto new file mode 100644 index 0000000000000000000000000000000000000000..9eb650fb9981b4b84f31b63796eec0c7a8e780b6 --- /dev/null +++ b/proto/pathcomp.proto @@ -0,0 +1,48 @@ +// Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +// +// Licensed 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. + +syntax = "proto3"; +package pathcomp; + +import "context.proto"; + +service PathCompService { + rpc Compute(PathCompRequest) returns (PathCompReply) {} +} + +message Algorithm_ShortestPath {} + +message Algorithm_KShortestPath { + uint32 k_inspection = 1; + uint32 k_return = 2; +} + +message PathCompRequest { + repeated context.Service services = 1; + oneof algorithm { + Algorithm_ShortestPath shortest_path = 10; + Algorithm_KShortestPath k_shortest_path = 11; + } +} + +message PathCompReply { + // Services requested completed with possible missing fields, and + // sub-services required for supporting requested services on the + // underlying layers. + repeated context.Service services = 1; + + // Connections supporting the requested services and sub-services + // required for the underlying layers. + repeated context.Connection connections = 2; +} diff --git a/proto/policy.proto b/proto/policy.proto index 0887ae955edb544616d711189db0133fa788c104..9e686f180994be988543ebd9a26dfd31dffed007 100644 --- a/proto/policy.proto +++ b/proto/policy.proto @@ -20,23 +20,28 @@ import "policy-condition.proto"; import "policy-action.proto"; service PolicyService { - rpc PolicyAdd (PolicyRule) returns (PolicyRuleState) {} - rpc PolicyUpdate (PolicyRule) returns (PolicyRuleState) {} - rpc PolicyDelete (PolicyRule) returns (PolicyRuleState) {} - rpc GetPolicy (PolicyRuleId) returns (PolicyRule) {} - rpc GetPolicyByDeviceId (context.DeviceId) returns (PolicyRuleList) {} - rpc GetPolicyByServiceId (context.ServiceId) returns (PolicyRuleList) {} + rpc PolicyAddService (PolicyRuleService) returns (PolicyRuleState) {} + rpc PolicyAddDevice (PolicyRuleDevice) returns (PolicyRuleState) {} + rpc PolicyUpdateService (PolicyRuleService) returns (PolicyRuleState) {} + rpc PolicyUpdateDevice (PolicyRuleDevice) returns (PolicyRuleState) {} + rpc PolicyDelete (PolicyRuleId) returns (PolicyRuleState) {} + rpc GetPolicyService (PolicyRuleId) returns (PolicyRuleService) {} + rpc GetPolicyDevice (PolicyRuleId) returns (PolicyRuleDevice) {} + rpc GetPolicyByServiceId (context.ServiceId) returns (PolicyRuleServiceList) {} } enum RuleState { - POLICY_INACTIVE = 0; // Rule is currently inactive - POLICY_PLANNED = 1; // Rule installation planned - POLICY_ACTIVE = 2; // Rule is currently active -} - -enum PolicyRuleType { - POLICYTYPE_DEVICE = 0; // Device-level - POLICYTYPE_NETWORK = 1; // Network-wide + POLICY_UNDEFINED = 0; // Undefined rule state + POLICY_FAILED = 1; // Rule failed + POLICY_INSERTED = 2; // Rule is just inserted + POLICY_VALIDATED = 3; // Rule content is correct + POLICY_PROVISIONED = 4; // Rule subscribed to Monitoring + POLICY_ACTIVE = 5; // Rule is currently active (alarm is just thrown by Monitoring) + POLICY_ENFORCED = 6; // Rule action is successfully enforced + POLICY_INEFFECTIVE = 7; // The applied rule action did not work as expected + POLICY_EFFECTIVE = 8; // The applied rule action did work as expected + POLICY_UPDATED = 9; // Operator requires a policy to change + POLICY_REMOVED = 10; // Operator requires to remove a policy } message PolicyRuleId { @@ -44,39 +49,56 @@ message PolicyRuleId { } message PolicyRuleState { - context.Uuid policyRuleId = 1; - RuleState policyRuleState = 2; + RuleState policyRuleState = 1; } -// IETF draft: Framework for Use of ECA (Event Condition Action) in Network Self Management -// Source: https://datatracker.ietf.org/doc/draft-bwd-netmod-eca-framework/ -// Event -message PolicyRuleEvent { - context.Event event = 1; +// Basic policy rule attributes +message PolicyRuleBasic { + PolicyRuleId policyRuleId = 1; + optional PolicyRuleState policyRuleState = 2; + uint32 priority = 3; + + // Event-Condition-Action (ECA) model + repeated PolicyRuleCondition conditionList = 4; // When these policy conditions are met, an event is automatically thrown + BooleanOperator booleanOperator = 5; // Evaluation operator to be used + repeated PolicyRuleAction actionList = 6; // One or more actions should be applied } -// Policy rule partially complies with IETF’s: -// RFC 3060: https://datatracker.ietf.org/doc/html/rfc3060 -// RFC 3460: https://datatracker.ietf.org/doc/html/rfc3460 -// Enhanced with a policy rule event according to the ECA model -message PolicyRule { +// Service-oriented policy rule +message PolicyRuleService { // Basic policy rule attributes - PolicyRuleId policyRuleId = 1; - PolicyRuleType policyRuleType = 2; - uint32 priority = 3; + PolicyRuleBasic policyRuleBasic = 1; + + // Affected service and (some of) its device(s) + context.ServiceId serviceId = 2; + repeated context.DeviceId deviceList = 3; // List of devices this service is traversing (not exhaustive) +} + +// Device-oriented policy rule +message PolicyRuleDevice { + // Basic policy rule attributes + PolicyRuleBasic policyRuleBasic = 1; + + // Affected device(s) + repeated context.DeviceId deviceList = 2; +} + +// A list of policy rule IDs +message PolicyRuleIdList { + repeated PolicyRuleId policyRuleIdList = 1; +} - // Event-Condition-Action model - PolicyRuleEvent event = 4; // A single event triggers the policy - repeated PolicyRuleCondition conditionList = 5; // One or more conditions must be met - BooleanOperator booleanOperator = 6; // Evaluation operator to be used - repeated PolicyRuleAction actionList = 7; // One or more actions should be applied +// A list of service-oriented policy rules +message PolicyRuleServiceList { + repeated PolicyRuleService policyRuleServiceList = 1; +} - // Affected service and devices - context.ServiceId serviceId = 8; - repeated context.DeviceId deviceList = 9; +// A list of device-oriented policy rules +message PolicyRuleDeviceList { + repeated PolicyRuleDevice policyRuleDeviceList = 1; } // A list of policy rules message PolicyRuleList { - repeated PolicyRule policyRuleList = 1; + repeated PolicyRuleId policyRules = 1; } diff --git a/proto/slice.proto b/proto/slice.proto index 9c518c9da05f850f209dc8a3f8d945fff4aced2b..69fa242e2310f791faa2429d59c01fc2572025d2 100644 --- a/proto/slice.proto +++ b/proto/slice.proto @@ -21,4 +21,6 @@ service SliceService { rpc CreateSlice(context.Slice ) returns (context.SliceId) {} rpc UpdateSlice(context.Slice ) returns (context.SliceId) {} rpc DeleteSlice(context.SliceId) returns (context.Empty ) {} + rpc OrderSliceWithSLA(context.Slice) returns (context.SliceId) {} // If slice with SLA already exists, returns slice. If not, it creates it. + rpc RunSliceGrouping (context.Empty) returns (context.Empty) {} // Optimizes the underlying services and re-maps them to the requested slices. } diff --git a/proto/src/java/.gitignore b/proto/src/java/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..3f93458aca854d3e06f27ca0caa672f3906f1720 --- /dev/null +++ b/proto/src/java/.gitignore @@ -0,0 +1,5 @@ +* + +# used to prevent breaking symbolic links from source code folders +!.gitignore +!__init__.py diff --git a/proto/src/python/.gitignore b/proto/src/python/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..3f93458aca854d3e06f27ca0caa672f3906f1720 --- /dev/null +++ b/proto/src/python/.gitignore @@ -0,0 +1,5 @@ +* + +# used to prevent breaking symbolic links from source code folders +!.gitignore +!__init__.py diff --git a/proto/src/python/__init__.py b/proto/src/python/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..9953c820575d42fa88351cc8de022d880ba96e6a --- /dev/null +++ b/proto/src/python/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. diff --git a/proto/te.proto b/proto/te.proto index f811f86fed64220cd98d1d8439cca5af3dd8548a..f85f94f48322d85e2c6bd7e667f7dfc9cb2febda 100644 --- a/proto/te.proto +++ b/proto/te.proto @@ -16,10 +16,9 @@ syntax = "proto3"; package te; import "context.proto"; -import "service.proto"; service TEService { - rpc RequestLSP(service.Service ) returns (service.ServiceState) {} - rpc UpdateLSP (service.ServiceId) returns (service.ServiceState) {} - rpc DeleteLSP (service.ServiceId) returns (context.Empty ) {} + rpc RequestLSP (context.Service) returns (context.ServiceStatus) {} + rpc UpdateLSP (context.ServiceId) returns (context.ServiceStatus) {} + rpc DeleteLSP (context.ServiceId) returns (context.Empty) {} } diff --git a/proto/uml/acl.png b/proto/uml/acl.png new file mode 100644 index 0000000000000000000000000000000000000000..3cc4e0f9decb0ecac761c6ab971ecdb80890a4b4 Binary files /dev/null and b/proto/uml/acl.png differ diff --git a/proto/uml/context.png b/proto/uml/context.png index 57a2493cf8596d1f4e70f2e3056d1a9d71432aee..3ea3a6e21dd3eddba749c2f0b483d41b365ef11f 100644 Binary files a/proto/uml/context.png and b/proto/uml/context.png differ diff --git a/proto/uml/dlt.png b/proto/uml/dlt.png index 51988d55b4e63230ff62e647f1b52e5f9418ad25..f8d4e25c1881a932c49bf151eab56921a4ff8a7b 100644 Binary files a/proto/uml/dlt.png and b/proto/uml/dlt.png differ diff --git a/proto/uml/forecaster.png b/proto/uml/forecaster.png new file mode 100644 index 0000000000000000000000000000000000000000..d32e142959ca0060556ce6ce622552dc5ff4d416 Binary files /dev/null and b/proto/uml/forecaster.png differ diff --git a/proto/uml/monitoring.png b/proto/uml/monitoring.png index 676389fc6971457b3d0c4194484bb78b4be52404..98f2e1d64766faf55599e465dd30f57e3518b11f 100644 Binary files a/proto/uml/monitoring.png and b/proto/uml/monitoring.png differ diff --git a/proto/uml/policy.png b/proto/uml/policy.png index e4f5c52848b75643c3a8272fb0223147bced5b90..adbebe89f657a77d40b3ddf8cec95a93951deaf0 100644 Binary files a/proto/uml/policy.png and b/proto/uml/policy.png differ diff --git a/proto/uml/slice.png b/proto/uml/slice.png deleted file mode 100644 index 01b62425b28f6bb5319a96ddd7fc5b62ff620620..0000000000000000000000000000000000000000 Binary files a/proto/uml/slice.png and /dev/null differ diff --git a/scripts/report_coverage_pathcomp.sh b/scripts/report_coverage_pathcomp.sh new file mode 100755 index 0000000000000000000000000000000000000000..3af2790f838619e495a9b5727506f6829ad12a35 --- /dev/null +++ b/scripts/report_coverage_pathcomp.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + + +./report_coverage_all.sh | grep --color -E -i "^pathcomp/.*$|$" diff --git a/scripts/run_tests_locally-device.sh b/scripts/run_tests_locally-device.sh new file mode 100755 index 0000000000000000000000000000000000000000..ba6c0b6a58031720addc17cc0de9169e592099f5 --- /dev/null +++ b/scripts/run_tests_locally-device.sh @@ -0,0 +1,28 @@ +#!/bin/bash +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + + +PROJECTDIR=`pwd` + +cd $PROJECTDIR/src +RCFILE=$PROJECTDIR/coverage/.coveragerc + +# Run unitary tests and analyze coverage of code at same time + +# Useful flags for pytest: +#-o log_cli=true -o log_file=device.log -o log_file_level=DEBUG + +coverage run --rcfile=$RCFILE --append -m pytest --log-level=INFO --verbose \ + device/tests/test_unitary.py diff --git a/scripts/run_tests_locally-pathcomp.sh b/scripts/run_tests_locally-pathcomp.sh new file mode 100755 index 0000000000000000000000000000000000000000..f56f47a8b592939243a2ec5d9fd95d89046582d1 --- /dev/null +++ b/scripts/run_tests_locally-pathcomp.sh @@ -0,0 +1,28 @@ +#!/bin/bash +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + + +PROJECTDIR=`pwd` + +cd $PROJECTDIR/src +RCFILE=$PROJECTDIR/coverage/.coveragerc + +# Run unitary tests and analyze coverage of code at same time + +# Useful flags for pytest: +#-o log_cli=true -o log_file=service.log -o log_file_level=DEBUG + +coverage run --rcfile=$RCFILE --append -m pytest --log-level=INFO --verbose \ + pathcomp/tests/test_unitary.py diff --git a/scripts/run_tests_locally.sh b/scripts/run_tests_locally.sh index 4a95fd8be7ac83ff0b5ec5a3db47c0cf4fae06f4..69463ea79bf717565385a44f168e84780902fce8 100755 --- a/scripts/run_tests_locally.sh +++ b/scripts/run_tests_locally.sh @@ -97,3 +97,6 @@ coverage run --rcfile=$RCFILE --append -m pytest --log-level=INFO --verbose \ coverage run --rcfile=$RCFILE --append -m pytest --log-level=INFO --verbose \ slice/tests/test_unitary.py + +coverage run --rcfile=$RCFILE --append -m pytest --log-level=INFO --verbose \ + pathcomp/tests/test_unitary.py diff --git a/src/automation/src/main/docker/Dockerfile.multistage.jvm b/src/automation/src/main/docker/Dockerfile.multistage.jvm index 111527d46d08891480894240f381e7bd6501f051..426e154baf71b1854fa688fb9302bbc539a1a635 100644 --- a/src/automation/src/main/docker/Dockerfile.multistage.jvm +++ b/src/automation/src/main/docker/Dockerfile.multistage.jvm @@ -60,7 +60,7 @@ COPY --from=builder --chown=1001 /app/target/quarkus-app/app/ /deployments/app/ COPY --from=builder --chown=1001 /app/target/quarkus-app/quarkus/ /deployments/quarkus/ EXPOSE 8080 -EXPOSE 9999 +EXPOSE 5050 USER 1001 ENTRYPOINT [ "/deployments/run-java.sh" ] diff --git a/src/automation/src/main/resources/application.yml b/src/automation/src/main/resources/application.yml index 24280803e81ecb90933a7ccd531a754b034cabb7..bc89d4348dfdfc5dc3f9159fb167d00509a8e4dc 100644 --- a/src/automation/src/main/resources/application.yml +++ b/src/automation/src/main/resources/application.yml @@ -19,7 +19,7 @@ quarkus: path: teraflow-automation-banner.txt grpc: server: - port: 9999 + port: 5050 enable-reflection-service: true clients: context: @@ -53,9 +53,9 @@ quarkus: http: host-port: 8080 container-port: 8080 - grpc-server: - host-port: 9999 - container-port: 9999 + grpc: + host-port: 5050 + container-port: 5050 env: vars: context-service-host: "contextservice" diff --git a/src/automation/target/kubernetes/kubernetes.yml b/src/automation/target/kubernetes/kubernetes.yml index 0e4bc0c62fdeb19644d596189a295bba3e53dd97..d494e82f18a77d85b696d865270eac7923f6cc7c 100644 --- a/src/automation/target/kubernetes/kubernetes.yml +++ b/src/automation/target/kubernetes/kubernetes.yml @@ -3,20 +3,20 @@ apiVersion: v1 kind: Service metadata: annotations: - app.quarkus.io/commit-id: fee580ca578000e6006c77704c0d6240e261de0f - app.quarkus.io/build-timestamp: 2022-05-27 - 08:02:36 +0000 + app.quarkus.io/commit-id: cfe69c57feb1d488c2dda620021e3c62d67fc3d3 + app.quarkus.io/build-timestamp: 2022-07-14 - 07:57:09 +0000 labels: app.kubernetes.io/name: automationservice app: automationservice name: automationservice spec: ports: - - name: grpc-server - port: 9999 - targetPort: 9999 - name: http port: 8080 targetPort: 8080 + - name: grpc + port: 5050 + targetPort: 5050 selector: app.kubernetes.io/name: automationservice type: ClusterIP @@ -25,8 +25,8 @@ apiVersion: apps/v1 kind: Deployment metadata: annotations: - app.quarkus.io/commit-id: fee580ca578000e6006c77704c0d6240e261de0f - app.quarkus.io/build-timestamp: 2022-05-27 - 08:02:36 +0000 + app.quarkus.io/commit-id: cfe69c57feb1d488c2dda620021e3c62d67fc3d3 + app.quarkus.io/build-timestamp: 2022-07-14 - 07:57:09 +0000 labels: app: automationservice app.kubernetes.io/name: automationservice @@ -39,8 +39,8 @@ spec: template: metadata: annotations: - app.quarkus.io/commit-id: fee580ca578000e6006c77704c0d6240e261de0f - app.quarkus.io/build-timestamp: 2022-05-27 - 08:02:36 +0000 + app.quarkus.io/commit-id: cfe69c57feb1d488c2dda620021e3c62d67fc3d3 + app.quarkus.io/build-timestamp: 2022-07-14 - 07:57:09 +0000 labels: app: automationservice app.kubernetes.io/name: automationservice @@ -51,10 +51,10 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace - - name: CONTEXT_SERVICE_HOST - value: ContextService - name: DEVICE_SERVICE_HOST value: DeviceService + - name: CONTEXT_SERVICE_HOST + value: ContextService image: registry.gitlab.com/teraflow-h2020/controller/automation:0.2.0 imagePullPolicy: Always livenessProbe: @@ -69,12 +69,12 @@ spec: timeoutSeconds: 10 name: automationservice ports: - - containerPort: 9999 - name: grpc-server - protocol: TCP - containerPort: 8080 name: http protocol: TCP + - containerPort: 5050 + name: grpc + protocol: TCP readinessProbe: failureThreshold: 3 httpGet: diff --git a/src/common/Constants.py b/src/common/Constants.py index dbe4124e792db73e122a7b436ca19be814aed761..f1ccf9758df907fdb97bb568cb1abba89e5a6539 100644 --- a/src/common/Constants.py +++ b/src/common/Constants.py @@ -46,6 +46,7 @@ class ServiceNameEnum(Enum): COMPUTE = 'compute' CYBERSECURITY = 'cybersecurity' INTERDOMAIN = 'interdomain' + PATHCOMP = 'pathcomp' # Default gRPC service ports DEFAULT_SERVICE_GRPC_PORTS = { @@ -60,6 +61,7 @@ DEFAULT_SERVICE_GRPC_PORTS = { ServiceNameEnum.COMPUTE .value : 9090, ServiceNameEnum.CYBERSECURITY.value : 10000, ServiceNameEnum.INTERDOMAIN .value : 10010, + ServiceNameEnum.PATHCOMP .value : 10020, } # Default HTTP/REST-API service ports diff --git a/src/common/proto b/src/common/proto new file mode 120000 index 0000000000000000000000000000000000000000..0ae252a7824cad03d85fa60224b87d8c779f1588 --- /dev/null +++ b/src/common/proto @@ -0,0 +1 @@ +../../proto/src/python \ No newline at end of file diff --git a/src/common/tests/MockServicerImpl_Context.py b/src/common/tests/MockServicerImpl_Context.py index 38f932f4dc9638abf3e526e6867800dd01cca154..8b4560016bc2cfa54d5ac30e7147b4df59e04e72 100644 --- a/src/common/tests/MockServicerImpl_Context.py +++ b/src/common/tests/MockServicerImpl_Context.py @@ -18,8 +18,8 @@ from common.tools.grpc.Tools import grpc_message_to_json_string from context.proto.context_pb2 import ( Connection, ConnectionEvent, ConnectionId, ConnectionIdList, ConnectionList, Context, ContextEvent, ContextId, ContextIdList, ContextList, Device, DeviceEvent, DeviceId, DeviceIdList, DeviceList, Empty, Link, LinkEvent, - LinkId, LinkIdList, LinkList, Service, ServiceEvent, ServiceId, ServiceIdList, ServiceList, Topology, - TopologyEvent, TopologyId, TopologyIdList, TopologyList) + LinkId, LinkIdList, LinkList, Service, ServiceEvent, ServiceId, ServiceIdList, ServiceList, Slice, SliceEvent, + SliceId, SliceIdList, SliceList, Topology, TopologyEvent, TopologyId, TopologyIdList, TopologyList) from context.proto.context_pb2_grpc import ContextServiceServicer LOGGER = logging.getLogger(__name__) @@ -92,12 +92,12 @@ class MockServicerImpl_Context(ContextServiceServicer): def ListTopologyIds(self, request: ContextId, context : grpc.ServicerContext) -> TopologyIdList: LOGGER.info('[ListTopologyIds] request={:s}'.format(grpc_message_to_json_string(request))) - topologies = get_entries(self.database, 'topology[{:s}]'.format(str(request.context_id.context_uuid.uuid))) + topologies = get_entries(self.database, 'topology[{:s}]'.format(str(request.context_uuid.uuid))) return TopologyIdList(topology_ids=[topology.topology_id for topology in topologies]) def ListTopologies(self, request: ContextId, context : grpc.ServicerContext) -> TopologyList: LOGGER.info('[ListTopologies] request={:s}'.format(grpc_message_to_json_string(request))) - topologies = get_entries(self.database, 'topology[{:s}]'.format(str(request.context_id.context_uuid.uuid))) + topologies = get_entries(self.database, 'topology[{:s}]'.format(str(request.context_uuid.uuid))) return TopologyList(topologies=[topology for topology in topologies]) def GetTopology(self, request: TopologyId, context : grpc.ServicerContext) -> Topology: @@ -171,16 +171,48 @@ class MockServicerImpl_Context(ContextServiceServicer): LOGGER.info('[GetLinkEvents] request={:s}'.format(grpc_message_to_json_string(request))) + # ----- Slice ------------------------------------------------------------------------------------------------------ + + def ListSliceIds(self, request: ContextId, context : grpc.ServicerContext) -> SliceIdList: + LOGGER.info('[ListSliceIds] request={:s}'.format(grpc_message_to_json_string(request))) + slices = get_entries(self.database, 'slice[{:s}]'.format(str(request.context_uuid.uuid))) + return SliceIdList(slice_ids=[slice.slice_id for slice in slices]) + + def ListSlices(self, request: ContextId, context : grpc.ServicerContext) -> SliceList: + LOGGER.info('[ListSlices] request={:s}'.format(grpc_message_to_json_string(request))) + slices = get_entries(self.database, 'slice[{:s}]'.format(str(request.context_uuid.uuid))) + return SliceList(slices=[slice for slice in slices]) + + def GetSlice(self, request: SliceId, context : grpc.ServicerContext) -> Slice: + LOGGER.info('[GetSlice] request={:s}'.format(grpc_message_to_json_string(request))) + container_name = 'slice[{:s}]'.format(str(request.context_id.context_uuid.uuid)) + return get_entry(context, self.database, container_name, request.slice_uuid.uuid) + + def SetSlice(self, request: Slice, context : grpc.ServicerContext) -> SliceId: + LOGGER.info('[SetSlice] request={:s}'.format(grpc_message_to_json_string(request))) + return set_entry( + self.database, 'slice[{:s}]'.format(str(request.slice_id.context_id.context_uuid.uuid)), + request.slice_id.slice_uuid.uuid, request).slice_id + + def RemoveSlice(self, request: SliceId, context : grpc.ServicerContext) -> Empty: + LOGGER.info('[RemoveSlice] request={:s}'.format(grpc_message_to_json_string(request))) + container_name = 'slice[{:s}]'.format(str(request.context_id.context_uuid.uuid)) + return del_entry(context, self.database, container_name, request.slice_uuid.uuid) + + def GetSliceEvents(self, request: Empty, context : grpc.ServicerContext) -> Iterator[SliceEvent]: + LOGGER.info('[GetSliceEvents] request={:s}'.format(grpc_message_to_json_string(request))) + + # ----- Service ---------------------------------------------------------------------------------------------------- def ListServiceIds(self, request: ContextId, context : grpc.ServicerContext) -> ServiceIdList: LOGGER.info('[ListServiceIds] request={:s}'.format(grpc_message_to_json_string(request))) - services = get_entries(self.database, 'service[{:s}]'.format(str(request.context_id.context_uuid.uuid))) + services = get_entries(self.database, 'service[{:s}]'.format(str(request.context_uuid.uuid))) return ServiceIdList(service_ids=[service.service_id for service in services]) def ListServices(self, request: ContextId, context : grpc.ServicerContext) -> ServiceList: LOGGER.info('[ListServices] request={:s}'.format(grpc_message_to_json_string(request))) - services = get_entries(self.database, 'service[{:s}]'.format(str(request.context_id.context_uuid.uuid))) + services = get_entries(self.database, 'service[{:s}]'.format(str(request.context_uuid.uuid))) return ServiceList(services=[service for service in services]) def GetService(self, request: ServiceId, context : grpc.ServicerContext) -> Service: diff --git a/src/common/tools/object_factory/Service.py b/src/common/tools/object_factory/Service.py index a84953926bed1a479d9c832025e580286353630b..21264d680cc8f184512097db8c7082134f16e28f 100644 --- a/src/common/tools/object_factory/Service.py +++ b/src/common/tools/object_factory/Service.py @@ -18,6 +18,11 @@ from common.Constants import DEFAULT_CONTEXT_UUID from common.tools.object_factory.Context import json_context_id from context.proto.context_pb2 import ServiceStatusEnum, ServiceTypeEnum +def get_service_uuid(a_endpoint_id : Dict, z_endpoint_id : Dict) -> str: + return 'svc:{:s}/{:s}=={:s}/{:s}'.format( + a_endpoint_id['device_id']['device_uuid']['uuid'], a_endpoint_id['endpoint_uuid']['uuid'], + a_endpoint_id['device_id']['device_uuid']['uuid'], z_endpoint_id['endpoint_uuid']['uuid']) + def json_service_id(service_uuid : str, context_id : Optional[Dict] = None): result = {'service_uuid': {'uuid': service_uuid}} if context_id is not None: result['context_id'] = copy.deepcopy(context_id) diff --git a/src/context/genproto.sh b/src/context/genproto.sh index 5c54cd7a2b8f090d520c2f500cfc966838f657ab..00853475fd76757f21236550e88ecc0da160241a 100755 --- a/src/context/genproto.sh +++ b/src/context/genproto.sh @@ -36,10 +36,20 @@ tee proto/__init__.py << EOF > /dev/null EOF +python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto acl.proto python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto context.proto +python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto context-policy.proto python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto kpi_sample_types.proto +python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto policy.proto +rm proto/acl_pb2_grpc.py rm proto/kpi_sample_types_pb2_grpc.py +rm proto/policy_pb2_grpc.py -sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/context_pb2.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/acl_pb2.py sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/context_pb2_grpc.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/context_pb2.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/context_policy_pb2_grpc.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/context_policy_pb2.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/kpi_sample_types_pb2.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/policy_pb2.py diff --git a/src/context/proto/acl_pb2.py b/src/context/proto/acl_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..4e44dbb0e6f033842a194f6a471941232100dd67 --- /dev/null +++ b/src/context/proto/acl_pb2.py @@ -0,0 +1,431 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: acl.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='acl.proto', + package='acl', + syntax='proto3', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\tacl.proto\x12\x03\x61\x63l\"\xaa\x01\n\x08\x41\x63lMatch\x12\x0c\n\x04\x64scp\x18\x01 \x01(\r\x12\x10\n\x08protocol\x18\x02 \x01(\r\x12\x13\n\x0bsrc_address\x18\x03 \x01(\t\x12\x13\n\x0b\x64st_address\x18\x04 \x01(\t\x12\x10\n\x08src_port\x18\x05 \x01(\r\x12\x10\n\x08\x64st_port\x18\x06 \x01(\r\x12\x18\n\x10start_mpls_label\x18\x07 \x01(\r\x12\x16\n\x0e\x65nd_mpls_label\x18\x08 \x01(\r\"i\n\tAclAction\x12\x31\n\x0e\x66orward_action\x18\x01 \x01(\x0e\x32\x19.acl.AclForwardActionEnum\x12)\n\nlog_action\x18\x02 \x01(\x0e\x32\x15.acl.AclLogActionEnum\"r\n\x08\x41\x63lEntry\x12\x13\n\x0bsequence_id\x18\x01 \x01(\r\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x1c\n\x05match\x18\x03 \x01(\x0b\x32\r.acl.AclMatch\x12\x1e\n\x06\x61\x63tion\x18\x04 \x01(\x0b\x32\x0e.acl.AclAction\"\x84\x01\n\nAclRuleSet\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\"\n\x04type\x18\x02 \x01(\x0e\x32\x14.acl.AclRuleTypeEnum\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x0f\n\x07user_id\x18\x04 \x01(\t\x12\x1e\n\x07\x65ntries\x18\x05 \x03(\x0b\x32\r.acl.AclEntry*\x99\x01\n\x0f\x41\x63lRuleTypeEnum\x12\x19\n\x15\x41\x43LRULETYPE_UNDEFINED\x10\x00\x12\x14\n\x10\x41\x43LRULETYPE_IPV4\x10\x01\x12\x14\n\x10\x41\x43LRULETYPE_IPV6\x10\x02\x12\x12\n\x0e\x41\x43LRULETYPE_L2\x10\x03\x12\x14\n\x10\x41\x43LRULETYPE_MPLS\x10\x04\x12\x15\n\x11\x41\x43LRULETYPE_MIXED\x10\x05*\x97\x01\n\x14\x41\x63lForwardActionEnum\x12!\n\x1d\x41\x43LFORWARDINGACTION_UNDEFINED\x10\x00\x12\x1c\n\x18\x41\x43LFORWARDINGACTION_DROP\x10\x01\x12\x1e\n\x1a\x41\x43LFORWARDINGACTION_ACCEPT\x10\x02\x12\x1e\n\x1a\x41\x43LFORWARDINGACTION_REJECT\x10\x03*_\n\x10\x41\x63lLogActionEnum\x12\x1a\n\x16\x41\x43LLOGACTION_UNDEFINED\x10\x00\x12\x16\n\x12\x41\x43LLOGACTION_NOLOG\x10\x01\x12\x17\n\x13\x41\x43LLOGACTION_SYSLOG\x10\x02\x62\x06proto3' +) + +_ACLRULETYPEENUM = _descriptor.EnumDescriptor( + name='AclRuleTypeEnum', + full_name='acl.AclRuleTypeEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='ACLRULETYPE_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLRULETYPE_IPV4', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLRULETYPE_IPV6', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLRULETYPE_L2', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLRULETYPE_MPLS', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLRULETYPE_MIXED', index=5, number=5, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=550, + serialized_end=703, +) +_sym_db.RegisterEnumDescriptor(_ACLRULETYPEENUM) + +AclRuleTypeEnum = enum_type_wrapper.EnumTypeWrapper(_ACLRULETYPEENUM) +_ACLFORWARDACTIONENUM = _descriptor.EnumDescriptor( + name='AclForwardActionEnum', + full_name='acl.AclForwardActionEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='ACLFORWARDINGACTION_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLFORWARDINGACTION_DROP', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLFORWARDINGACTION_ACCEPT', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLFORWARDINGACTION_REJECT', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=706, + serialized_end=857, +) +_sym_db.RegisterEnumDescriptor(_ACLFORWARDACTIONENUM) + +AclForwardActionEnum = enum_type_wrapper.EnumTypeWrapper(_ACLFORWARDACTIONENUM) +_ACLLOGACTIONENUM = _descriptor.EnumDescriptor( + name='AclLogActionEnum', + full_name='acl.AclLogActionEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='ACLLOGACTION_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLLOGACTION_NOLOG', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='ACLLOGACTION_SYSLOG', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=859, + serialized_end=954, +) +_sym_db.RegisterEnumDescriptor(_ACLLOGACTIONENUM) + +AclLogActionEnum = enum_type_wrapper.EnumTypeWrapper(_ACLLOGACTIONENUM) +ACLRULETYPE_UNDEFINED = 0 +ACLRULETYPE_IPV4 = 1 +ACLRULETYPE_IPV6 = 2 +ACLRULETYPE_L2 = 3 +ACLRULETYPE_MPLS = 4 +ACLRULETYPE_MIXED = 5 +ACLFORWARDINGACTION_UNDEFINED = 0 +ACLFORWARDINGACTION_DROP = 1 +ACLFORWARDINGACTION_ACCEPT = 2 +ACLFORWARDINGACTION_REJECT = 3 +ACLLOGACTION_UNDEFINED = 0 +ACLLOGACTION_NOLOG = 1 +ACLLOGACTION_SYSLOG = 2 + + + +_ACLMATCH = _descriptor.Descriptor( + name='AclMatch', + full_name='acl.AclMatch', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='dscp', full_name='acl.AclMatch.dscp', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='protocol', full_name='acl.AclMatch.protocol', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='src_address', full_name='acl.AclMatch.src_address', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='dst_address', full_name='acl.AclMatch.dst_address', index=3, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='src_port', full_name='acl.AclMatch.src_port', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='dst_port', full_name='acl.AclMatch.dst_port', index=5, + number=6, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='start_mpls_label', full_name='acl.AclMatch.start_mpls_label', index=6, + number=7, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='end_mpls_label', full_name='acl.AclMatch.end_mpls_label', index=7, + number=8, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=19, + serialized_end=189, +) + + +_ACLACTION = _descriptor.Descriptor( + name='AclAction', + full_name='acl.AclAction', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='forward_action', full_name='acl.AclAction.forward_action', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='log_action', full_name='acl.AclAction.log_action', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=191, + serialized_end=296, +) + + +_ACLENTRY = _descriptor.Descriptor( + name='AclEntry', + full_name='acl.AclEntry', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='sequence_id', full_name='acl.AclEntry.sequence_id', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='description', full_name='acl.AclEntry.description', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='match', full_name='acl.AclEntry.match', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='action', full_name='acl.AclEntry.action', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=298, + serialized_end=412, +) + + +_ACLRULESET = _descriptor.Descriptor( + name='AclRuleSet', + full_name='acl.AclRuleSet', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='name', full_name='acl.AclRuleSet.name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='type', full_name='acl.AclRuleSet.type', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='description', full_name='acl.AclRuleSet.description', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='user_id', full_name='acl.AclRuleSet.user_id', index=3, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='entries', full_name='acl.AclRuleSet.entries', index=4, + number=5, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=415, + serialized_end=547, +) + +_ACLACTION.fields_by_name['forward_action'].enum_type = _ACLFORWARDACTIONENUM +_ACLACTION.fields_by_name['log_action'].enum_type = _ACLLOGACTIONENUM +_ACLENTRY.fields_by_name['match'].message_type = _ACLMATCH +_ACLENTRY.fields_by_name['action'].message_type = _ACLACTION +_ACLRULESET.fields_by_name['type'].enum_type = _ACLRULETYPEENUM +_ACLRULESET.fields_by_name['entries'].message_type = _ACLENTRY +DESCRIPTOR.message_types_by_name['AclMatch'] = _ACLMATCH +DESCRIPTOR.message_types_by_name['AclAction'] = _ACLACTION +DESCRIPTOR.message_types_by_name['AclEntry'] = _ACLENTRY +DESCRIPTOR.message_types_by_name['AclRuleSet'] = _ACLRULESET +DESCRIPTOR.enum_types_by_name['AclRuleTypeEnum'] = _ACLRULETYPEENUM +DESCRIPTOR.enum_types_by_name['AclForwardActionEnum'] = _ACLFORWARDACTIONENUM +DESCRIPTOR.enum_types_by_name['AclLogActionEnum'] = _ACLLOGACTIONENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +AclMatch = _reflection.GeneratedProtocolMessageType('AclMatch', (_message.Message,), { + 'DESCRIPTOR' : _ACLMATCH, + '__module__' : 'acl_pb2' + # @@protoc_insertion_point(class_scope:acl.AclMatch) + }) +_sym_db.RegisterMessage(AclMatch) + +AclAction = _reflection.GeneratedProtocolMessageType('AclAction', (_message.Message,), { + 'DESCRIPTOR' : _ACLACTION, + '__module__' : 'acl_pb2' + # @@protoc_insertion_point(class_scope:acl.AclAction) + }) +_sym_db.RegisterMessage(AclAction) + +AclEntry = _reflection.GeneratedProtocolMessageType('AclEntry', (_message.Message,), { + 'DESCRIPTOR' : _ACLENTRY, + '__module__' : 'acl_pb2' + # @@protoc_insertion_point(class_scope:acl.AclEntry) + }) +_sym_db.RegisterMessage(AclEntry) + +AclRuleSet = _reflection.GeneratedProtocolMessageType('AclRuleSet', (_message.Message,), { + 'DESCRIPTOR' : _ACLRULESET, + '__module__' : 'acl_pb2' + # @@protoc_insertion_point(class_scope:acl.AclRuleSet) + }) +_sym_db.RegisterMessage(AclRuleSet) + + +# @@protoc_insertion_point(module_scope) diff --git a/src/context/proto/context_pb2.py b/src/context/proto/context_pb2.py index 50d501d3ac053ad644554331af26e3c40cd426a1..aa72c655cce55dacc9c924a5dcc421f2b51fea22 100644 --- a/src/context/proto/context_pb2.py +++ b/src/context/proto/context_pb2.py @@ -12,6 +12,7 @@ from google.protobuf import symbol_database as _symbol_database _sym_db = _symbol_database.Default() +from . import acl_pb2 as acl__pb2 from . import kpi_sample_types_pb2 as kpi__sample__types__pb2 @@ -21,9 +22,9 @@ DESCRIPTOR = _descriptor.FileDescriptor( syntax='proto3', serialized_options=None, create_key=_descriptor._internal_create_key, - serialized_pb=b'\n\rcontext.proto\x12\x07\x63ontext\x1a\x16kpi_sample_types.proto\"\x07\n\x05\x45mpty\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"F\n\x05\x45vent\x12\x11\n\ttimestamp\x18\x01 \x01(\x01\x12*\n\nevent_type\x18\x02 \x01(\x0e\x32\x16.context.EventTypeEnum\"0\n\tContextId\x12#\n\x0c\x63ontext_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\xb6\x01\n\x07\x43ontext\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12)\n\x0ctopology_ids\x18\x02 \x03(\x0b\x32\x13.context.TopologyId\x12\'\n\x0bservice_ids\x18\x03 \x03(\x0b\x32\x12.context.ServiceId\x12/\n\ncontroller\x18\x04 \x01(\x0b\x32\x1b.context.TeraFlowController\"8\n\rContextIdList\x12\'\n\x0b\x63ontext_ids\x18\x01 \x03(\x0b\x32\x12.context.ContextId\"1\n\x0b\x43ontextList\x12\"\n\x08\x63ontexts\x18\x01 \x03(\x0b\x32\x10.context.Context\"U\n\x0c\x43ontextEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12&\n\ncontext_id\x18\x02 \x01(\x0b\x32\x12.context.ContextId\"Z\n\nTopologyId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12$\n\rtopology_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"~\n\x08Topology\x12(\n\x0btopology_id\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12%\n\ndevice_ids\x18\x02 \x03(\x0b\x32\x11.context.DeviceId\x12!\n\x08link_ids\x18\x03 \x03(\x0b\x32\x0f.context.LinkId\";\n\x0eTopologyIdList\x12)\n\x0ctopology_ids\x18\x01 \x03(\x0b\x32\x13.context.TopologyId\"5\n\x0cTopologyList\x12%\n\ntopologies\x18\x01 \x03(\x0b\x32\x11.context.Topology\"X\n\rTopologyEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12(\n\x0btopology_id\x18\x02 \x01(\x0b\x32\x13.context.TopologyId\".\n\x08\x44\x65viceId\x12\"\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\x9a\x02\n\x06\x44\x65vice\x12$\n\tdevice_id\x18\x01 \x01(\x0b\x32\x11.context.DeviceId\x12\x13\n\x0b\x64\x65vice_type\x18\x02 \x01(\t\x12,\n\rdevice_config\x18\x03 \x01(\x0b\x32\x15.context.DeviceConfig\x12G\n\x19\x64\x65vice_operational_status\x18\x04 \x01(\x0e\x32$.context.DeviceOperationalStatusEnum\x12\x31\n\x0e\x64\x65vice_drivers\x18\x05 \x03(\x0e\x32\x19.context.DeviceDriverEnum\x12+\n\x10\x64\x65vice_endpoints\x18\x06 \x03(\x0b\x32\x11.context.EndPoint\"9\n\x0c\x44\x65viceConfig\x12)\n\x0c\x63onfig_rules\x18\x01 \x03(\x0b\x32\x13.context.ConfigRule\"5\n\x0c\x44\x65viceIdList\x12%\n\ndevice_ids\x18\x01 \x03(\x0b\x32\x11.context.DeviceId\".\n\nDeviceList\x12 \n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x0f.context.Device\"R\n\x0b\x44\x65viceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12$\n\tdevice_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\"*\n\x06LinkId\x12 \n\tlink_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"X\n\x04Link\x12 \n\x07link_id\x18\x01 \x01(\x0b\x32\x0f.context.LinkId\x12.\n\x11link_endpoint_ids\x18\x02 \x03(\x0b\x32\x13.context.EndPointId\"/\n\nLinkIdList\x12!\n\x08link_ids\x18\x01 \x03(\x0b\x32\x0f.context.LinkId\"(\n\x08LinkList\x12\x1c\n\x05links\x18\x01 \x03(\x0b\x32\r.context.Link\"L\n\tLinkEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12 \n\x07link_id\x18\x02 \x01(\x0b\x32\x0f.context.LinkId\"X\n\tServiceId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12#\n\x0cservice_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"\xa6\x02\n\x07Service\x12&\n\nservice_id\x18\x01 \x01(\x0b\x32\x12.context.ServiceId\x12.\n\x0cservice_type\x18\x02 \x01(\x0e\x32\x18.context.ServiceTypeEnum\x12\x31\n\x14service_endpoint_ids\x18\x03 \x03(\x0b\x32\x13.context.EndPointId\x12\x30\n\x13service_constraints\x18\x04 \x03(\x0b\x32\x13.context.Constraint\x12.\n\x0eservice_status\x18\x05 \x01(\x0b\x32\x16.context.ServiceStatus\x12.\n\x0eservice_config\x18\x06 \x01(\x0b\x32\x16.context.ServiceConfig\"C\n\rServiceStatus\x12\x32\n\x0eservice_status\x18\x01 \x01(\x0e\x32\x1a.context.ServiceStatusEnum\":\n\rServiceConfig\x12)\n\x0c\x63onfig_rules\x18\x01 \x03(\x0b\x32\x13.context.ConfigRule\"8\n\rServiceIdList\x12\'\n\x0bservice_ids\x18\x01 \x03(\x0b\x32\x12.context.ServiceId\"1\n\x0bServiceList\x12\"\n\x08services\x18\x01 \x03(\x0b\x32\x10.context.Service\"U\n\x0cServiceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12&\n\nservice_id\x18\x02 \x01(\x0b\x32\x12.context.ServiceId\"T\n\x07SliceId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12!\n\nslice_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"\x95\x02\n\x05Slice\x12\"\n\x08slice_id\x18\x01 \x01(\x0b\x32\x10.context.SliceId\x12/\n\x12slice_endpoint_ids\x18\x02 \x03(\x0b\x32\x13.context.EndPointId\x12.\n\x11slice_constraints\x18\x03 \x03(\x0b\x32\x13.context.Constraint\x12-\n\x11slice_service_ids\x18\x04 \x03(\x0b\x32\x12.context.ServiceId\x12,\n\x12slice_subslice_ids\x18\x05 \x03(\x0b\x32\x10.context.SliceId\x12*\n\x0cslice_status\x18\x06 \x01(\x0b\x32\x14.context.SliceStatus\"=\n\x0bSliceStatus\x12.\n\x0cslice_status\x18\x01 \x01(\x0e\x32\x18.context.SliceStatusEnum\"2\n\x0bSliceIdList\x12#\n\tslice_ids\x18\x01 \x03(\x0b\x32\x10.context.SliceId\"+\n\tSliceList\x12\x1e\n\x06slices\x18\x01 \x03(\x0b\x32\x0e.context.Slice\"O\n\nSliceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12\"\n\x08slice_id\x18\x02 \x01(\x0b\x32\x10.context.SliceId\"6\n\x0c\x43onnectionId\x12&\n\x0f\x63onnection_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\xc4\x01\n\nConnection\x12,\n\rconnection_id\x18\x01 \x01(\x0b\x32\x15.context.ConnectionId\x12&\n\nservice_id\x18\x02 \x01(\x0b\x32\x12.context.ServiceId\x12\x33\n\x16path_hops_endpoint_ids\x18\x03 \x03(\x0b\x32\x13.context.EndPointId\x12+\n\x0fsub_service_ids\x18\x04 \x03(\x0b\x32\x12.context.ServiceId\"A\n\x10\x43onnectionIdList\x12-\n\x0e\x63onnection_ids\x18\x01 \x03(\x0b\x32\x15.context.ConnectionId\":\n\x0e\x43onnectionList\x12(\n\x0b\x63onnections\x18\x01 \x03(\x0b\x32\x13.context.Connection\"^\n\x0f\x43onnectionEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12,\n\rconnection_id\x18\x02 \x01(\x0b\x32\x15.context.ConnectionId\"\x82\x01\n\nEndPointId\x12(\n\x0btopology_id\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12$\n\tdevice_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\x12$\n\rendpoint_uuid\x18\x03 \x01(\x0b\x32\r.context.Uuid\"\x86\x01\n\x08\x45ndPoint\x12(\n\x0b\x65ndpoint_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x15\n\rendpoint_type\x18\x02 \x01(\t\x12\x39\n\x10kpi_sample_types\x18\x03 \x03(\x0e\x32\x1f.kpi_sample_types.KpiSampleType\"e\n\nConfigRule\x12)\n\x06\x61\x63tion\x18\x01 \x01(\x0e\x32\x19.context.ConfigActionEnum\x12\x14\n\x0cresource_key\x18\x02 \x01(\t\x12\x16\n\x0eresource_value\x18\x03 \x01(\t\"?\n\nConstraint\x12\x17\n\x0f\x63onstraint_type\x18\x01 \x01(\t\x12\x18\n\x10\x63onstraint_value\x18\x02 \x01(\t\"^\n\x12TeraFlowController\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x12\n\nip_address\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\r\"U\n\x14\x41uthenticationResult\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x15\n\rauthenticated\x18\x02 \x01(\x08*j\n\rEventTypeEnum\x12\x17\n\x13\x45VENTTYPE_UNDEFINED\x10\x00\x12\x14\n\x10\x45VENTTYPE_CREATE\x10\x01\x12\x14\n\x10\x45VENTTYPE_UPDATE\x10\x02\x12\x14\n\x10\x45VENTTYPE_REMOVE\x10\x03*\xc5\x01\n\x10\x44\x65viceDriverEnum\x12\x1a\n\x16\x44\x45VICEDRIVER_UNDEFINED\x10\x00\x12\x1b\n\x17\x44\x45VICEDRIVER_OPENCONFIG\x10\x01\x12\x1e\n\x1a\x44\x45VICEDRIVER_TRANSPORT_API\x10\x02\x12\x13\n\x0f\x44\x45VICEDRIVER_P4\x10\x03\x12&\n\"DEVICEDRIVER_IETF_NETWORK_TOPOLOGY\x10\x04\x12\x1b\n\x17\x44\x45VICEDRIVER_ONF_TR_352\x10\x05*\x8f\x01\n\x1b\x44\x65viceOperationalStatusEnum\x12%\n!DEVICEOPERATIONALSTATUS_UNDEFINED\x10\x00\x12$\n DEVICEOPERATIONALSTATUS_DISABLED\x10\x01\x12#\n\x1f\x44\x45VICEOPERATIONALSTATUS_ENABLED\x10\x02*\x81\x01\n\x0fServiceTypeEnum\x12\x17\n\x13SERVICETYPE_UNKNOWN\x10\x00\x12\x14\n\x10SERVICETYPE_L3NM\x10\x01\x12\x14\n\x10SERVICETYPE_L2NM\x10\x02\x12)\n%SERVICETYPE_TAPI_CONNECTIVITY_SERVICE\x10\x03*\x88\x01\n\x11ServiceStatusEnum\x12\x1b\n\x17SERVICESTATUS_UNDEFINED\x10\x00\x12\x19\n\x15SERVICESTATUS_PLANNED\x10\x01\x12\x18\n\x14SERVICESTATUS_ACTIVE\x10\x02\x12!\n\x1dSERVICESTATUS_PENDING_REMOVAL\x10\x03*\x8b\x01\n\x0fSliceStatusEnum\x12\x19\n\x15SLICESTATUS_UNDEFINED\x10\x00\x12\x17\n\x13SLICESTATUS_PLANNED\x10\x01\x12\x14\n\x10SLICESTATUS_INIT\x10\x02\x12\x16\n\x12SLICESTATUS_ACTIVE\x10\x03\x12\x16\n\x12SLICESTATUS_DEINIT\x10\x04*]\n\x10\x43onfigActionEnum\x12\x1a\n\x16\x43ONFIGACTION_UNDEFINED\x10\x00\x12\x14\n\x10\x43ONFIGACTION_SET\x10\x01\x12\x17\n\x13\x43ONFIGACTION_DELETE\x10\x02\x32\xef\x12\n\x0e\x43ontextService\x12:\n\x0eListContextIds\x12\x0e.context.Empty\x1a\x16.context.ContextIdList\"\x00\x12\x36\n\x0cListContexts\x12\x0e.context.Empty\x1a\x14.context.ContextList\"\x00\x12\x34\n\nGetContext\x12\x12.context.ContextId\x1a\x10.context.Context\"\x00\x12\x34\n\nSetContext\x12\x10.context.Context\x1a\x12.context.ContextId\"\x00\x12\x35\n\rRemoveContext\x12\x12.context.ContextId\x1a\x0e.context.Empty\"\x00\x12=\n\x10GetContextEvents\x12\x0e.context.Empty\x1a\x15.context.ContextEvent\"\x00\x30\x01\x12@\n\x0fListTopologyIds\x12\x12.context.ContextId\x1a\x17.context.TopologyIdList\"\x00\x12=\n\x0eListTopologies\x12\x12.context.ContextId\x1a\x15.context.TopologyList\"\x00\x12\x37\n\x0bGetTopology\x12\x13.context.TopologyId\x1a\x11.context.Topology\"\x00\x12\x37\n\x0bSetTopology\x12\x11.context.Topology\x1a\x13.context.TopologyId\"\x00\x12\x37\n\x0eRemoveTopology\x12\x13.context.TopologyId\x1a\x0e.context.Empty\"\x00\x12?\n\x11GetTopologyEvents\x12\x0e.context.Empty\x1a\x16.context.TopologyEvent\"\x00\x30\x01\x12\x38\n\rListDeviceIds\x12\x0e.context.Empty\x1a\x15.context.DeviceIdList\"\x00\x12\x34\n\x0bListDevices\x12\x0e.context.Empty\x1a\x13.context.DeviceList\"\x00\x12\x31\n\tGetDevice\x12\x11.context.DeviceId\x1a\x0f.context.Device\"\x00\x12\x31\n\tSetDevice\x12\x0f.context.Device\x1a\x11.context.DeviceId\"\x00\x12\x33\n\x0cRemoveDevice\x12\x11.context.DeviceId\x1a\x0e.context.Empty\"\x00\x12;\n\x0fGetDeviceEvents\x12\x0e.context.Empty\x1a\x14.context.DeviceEvent\"\x00\x30\x01\x12\x34\n\x0bListLinkIds\x12\x0e.context.Empty\x1a\x13.context.LinkIdList\"\x00\x12\x30\n\tListLinks\x12\x0e.context.Empty\x1a\x11.context.LinkList\"\x00\x12+\n\x07GetLink\x12\x0f.context.LinkId\x1a\r.context.Link\"\x00\x12+\n\x07SetLink\x12\r.context.Link\x1a\x0f.context.LinkId\"\x00\x12/\n\nRemoveLink\x12\x0f.context.LinkId\x1a\x0e.context.Empty\"\x00\x12\x37\n\rGetLinkEvents\x12\x0e.context.Empty\x1a\x12.context.LinkEvent\"\x00\x30\x01\x12>\n\x0eListServiceIds\x12\x12.context.ContextId\x1a\x16.context.ServiceIdList\"\x00\x12:\n\x0cListServices\x12\x12.context.ContextId\x1a\x14.context.ServiceList\"\x00\x12\x34\n\nGetService\x12\x12.context.ServiceId\x1a\x10.context.Service\"\x00\x12\x34\n\nSetService\x12\x10.context.Service\x1a\x12.context.ServiceId\"\x00\x12\x35\n\rRemoveService\x12\x12.context.ServiceId\x1a\x0e.context.Empty\"\x00\x12=\n\x10GetServiceEvents\x12\x0e.context.Empty\x1a\x15.context.ServiceEvent\"\x00\x30\x01\x12:\n\x0cListSliceIds\x12\x12.context.ContextId\x1a\x14.context.SliceIdList\"\x00\x12\x36\n\nListSlices\x12\x12.context.ContextId\x1a\x12.context.SliceList\"\x00\x12.\n\x08GetSlice\x12\x10.context.SliceId\x1a\x0e.context.Slice\"\x00\x12.\n\x08SetSlice\x12\x0e.context.Slice\x1a\x10.context.SliceId\"\x00\x12\x31\n\x0bRemoveSlice\x12\x10.context.SliceId\x1a\x0e.context.Empty\"\x00\x12\x39\n\x0eGetSliceEvents\x12\x0e.context.Empty\x1a\x13.context.SliceEvent\"\x00\x30\x01\x12\x44\n\x11ListConnectionIds\x12\x12.context.ServiceId\x1a\x19.context.ConnectionIdList\"\x00\x12@\n\x0fListConnections\x12\x12.context.ServiceId\x1a\x17.context.ConnectionList\"\x00\x12=\n\rGetConnection\x12\x15.context.ConnectionId\x1a\x13.context.Connection\"\x00\x12=\n\rSetConnection\x12\x13.context.Connection\x1a\x15.context.ConnectionId\"\x00\x12;\n\x10RemoveConnection\x12\x15.context.ConnectionId\x1a\x0e.context.Empty\"\x00\x12\x43\n\x13GetConnectionEvents\x12\x0e.context.Empty\x1a\x18.context.ConnectionEvent\"\x00\x30\x01\x62\x06proto3' + serialized_pb=b'\n\rcontext.proto\x12\x07\x63ontext\x1a\tacl.proto\x1a\x16kpi_sample_types.proto\"\x07\n\x05\x45mpty\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"F\n\x05\x45vent\x12\x11\n\ttimestamp\x18\x01 \x01(\x01\x12*\n\nevent_type\x18\x02 \x01(\x0e\x32\x16.context.EventTypeEnum\"0\n\tContextId\x12#\n\x0c\x63ontext_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\xb6\x01\n\x07\x43ontext\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12)\n\x0ctopology_ids\x18\x02 \x03(\x0b\x32\x13.context.TopologyId\x12\'\n\x0bservice_ids\x18\x03 \x03(\x0b\x32\x12.context.ServiceId\x12/\n\ncontroller\x18\x04 \x01(\x0b\x32\x1b.context.TeraFlowController\"8\n\rContextIdList\x12\'\n\x0b\x63ontext_ids\x18\x01 \x03(\x0b\x32\x12.context.ContextId\"1\n\x0b\x43ontextList\x12\"\n\x08\x63ontexts\x18\x01 \x03(\x0b\x32\x10.context.Context\"U\n\x0c\x43ontextEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12&\n\ncontext_id\x18\x02 \x01(\x0b\x32\x12.context.ContextId\"Z\n\nTopologyId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12$\n\rtopology_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"~\n\x08Topology\x12(\n\x0btopology_id\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12%\n\ndevice_ids\x18\x02 \x03(\x0b\x32\x11.context.DeviceId\x12!\n\x08link_ids\x18\x03 \x03(\x0b\x32\x0f.context.LinkId\";\n\x0eTopologyIdList\x12)\n\x0ctopology_ids\x18\x01 \x03(\x0b\x32\x13.context.TopologyId\"5\n\x0cTopologyList\x12%\n\ntopologies\x18\x01 \x03(\x0b\x32\x11.context.Topology\"X\n\rTopologyEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12(\n\x0btopology_id\x18\x02 \x01(\x0b\x32\x13.context.TopologyId\".\n\x08\x44\x65viceId\x12\"\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\x9a\x02\n\x06\x44\x65vice\x12$\n\tdevice_id\x18\x01 \x01(\x0b\x32\x11.context.DeviceId\x12\x13\n\x0b\x64\x65vice_type\x18\x02 \x01(\t\x12,\n\rdevice_config\x18\x03 \x01(\x0b\x32\x15.context.DeviceConfig\x12G\n\x19\x64\x65vice_operational_status\x18\x04 \x01(\x0e\x32$.context.DeviceOperationalStatusEnum\x12\x31\n\x0e\x64\x65vice_drivers\x18\x05 \x03(\x0e\x32\x19.context.DeviceDriverEnum\x12+\n\x10\x64\x65vice_endpoints\x18\x06 \x03(\x0b\x32\x11.context.EndPoint\"9\n\x0c\x44\x65viceConfig\x12)\n\x0c\x63onfig_rules\x18\x01 \x03(\x0b\x32\x13.context.ConfigRule\"5\n\x0c\x44\x65viceIdList\x12%\n\ndevice_ids\x18\x01 \x03(\x0b\x32\x11.context.DeviceId\".\n\nDeviceList\x12 \n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x0f.context.Device\"R\n\x0b\x44\x65viceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12$\n\tdevice_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\"*\n\x06LinkId\x12 \n\tlink_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"X\n\x04Link\x12 \n\x07link_id\x18\x01 \x01(\x0b\x32\x0f.context.LinkId\x12.\n\x11link_endpoint_ids\x18\x02 \x03(\x0b\x32\x13.context.EndPointId\"/\n\nLinkIdList\x12!\n\x08link_ids\x18\x01 \x03(\x0b\x32\x0f.context.LinkId\"(\n\x08LinkList\x12\x1c\n\x05links\x18\x01 \x03(\x0b\x32\r.context.Link\"L\n\tLinkEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12 \n\x07link_id\x18\x02 \x01(\x0b\x32\x0f.context.LinkId\"X\n\tServiceId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12#\n\x0cservice_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"\xa6\x02\n\x07Service\x12&\n\nservice_id\x18\x01 \x01(\x0b\x32\x12.context.ServiceId\x12.\n\x0cservice_type\x18\x02 \x01(\x0e\x32\x18.context.ServiceTypeEnum\x12\x31\n\x14service_endpoint_ids\x18\x03 \x03(\x0b\x32\x13.context.EndPointId\x12\x30\n\x13service_constraints\x18\x04 \x03(\x0b\x32\x13.context.Constraint\x12.\n\x0eservice_status\x18\x05 \x01(\x0b\x32\x16.context.ServiceStatus\x12.\n\x0eservice_config\x18\x06 \x01(\x0b\x32\x16.context.ServiceConfig\"C\n\rServiceStatus\x12\x32\n\x0eservice_status\x18\x01 \x01(\x0e\x32\x1a.context.ServiceStatusEnum\":\n\rServiceConfig\x12)\n\x0c\x63onfig_rules\x18\x01 \x03(\x0b\x32\x13.context.ConfigRule\"8\n\rServiceIdList\x12\'\n\x0bservice_ids\x18\x01 \x03(\x0b\x32\x12.context.ServiceId\"1\n\x0bServiceList\x12\"\n\x08services\x18\x01 \x03(\x0b\x32\x10.context.Service\"U\n\x0cServiceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12&\n\nservice_id\x18\x02 \x01(\x0b\x32\x12.context.ServiceId\"T\n\x07SliceId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12!\n\nslice_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"\x95\x02\n\x05Slice\x12\"\n\x08slice_id\x18\x01 \x01(\x0b\x32\x10.context.SliceId\x12/\n\x12slice_endpoint_ids\x18\x02 \x03(\x0b\x32\x13.context.EndPointId\x12.\n\x11slice_constraints\x18\x03 \x03(\x0b\x32\x13.context.Constraint\x12-\n\x11slice_service_ids\x18\x04 \x03(\x0b\x32\x12.context.ServiceId\x12,\n\x12slice_subslice_ids\x18\x05 \x03(\x0b\x32\x10.context.SliceId\x12*\n\x0cslice_status\x18\x06 \x01(\x0b\x32\x14.context.SliceStatus\"=\n\x0bSliceStatus\x12.\n\x0cslice_status\x18\x01 \x01(\x0e\x32\x18.context.SliceStatusEnum\"2\n\x0bSliceIdList\x12#\n\tslice_ids\x18\x01 \x03(\x0b\x32\x10.context.SliceId\"+\n\tSliceList\x12\x1e\n\x06slices\x18\x01 \x03(\x0b\x32\x0e.context.Slice\"O\n\nSliceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12\"\n\x08slice_id\x18\x02 \x01(\x0b\x32\x10.context.SliceId\"6\n\x0c\x43onnectionId\x12&\n\x0f\x63onnection_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"2\n\x15\x43onnectionSettings_L0\x12\x19\n\x11lsp_symbolic_name\x18\x01 \x01(\t\"\x9e\x01\n\x15\x43onnectionSettings_L2\x12\x17\n\x0fsrc_mac_address\x18\x01 \x01(\t\x12\x17\n\x0f\x64st_mac_address\x18\x02 \x01(\t\x12\x12\n\nether_type\x18\x03 \x01(\r\x12\x0f\n\x07vlan_id\x18\x04 \x01(\r\x12\x12\n\nmpls_label\x18\x05 \x01(\r\x12\x1a\n\x12mpls_traffic_class\x18\x06 \x01(\r\"t\n\x15\x43onnectionSettings_L3\x12\x16\n\x0esrc_ip_address\x18\x01 \x01(\t\x12\x16\n\x0e\x64st_ip_address\x18\x02 \x01(\t\x12\x0c\n\x04\x64scp\x18\x03 \x01(\r\x12\x10\n\x08protocol\x18\x04 \x01(\r\x12\x0b\n\x03ttl\x18\x05 \x01(\r\"[\n\x15\x43onnectionSettings_L4\x12\x10\n\x08src_port\x18\x01 \x01(\r\x12\x10\n\x08\x64st_port\x18\x02 \x01(\r\x12\x11\n\ttcp_flags\x18\x03 \x01(\r\x12\x0b\n\x03ttl\x18\x04 \x01(\r\"\xc4\x01\n\x12\x43onnectionSettings\x12*\n\x02l0\x18\x01 \x01(\x0b\x32\x1e.context.ConnectionSettings_L0\x12*\n\x02l2\x18\x02 \x01(\x0b\x32\x1e.context.ConnectionSettings_L2\x12*\n\x02l3\x18\x03 \x01(\x0b\x32\x1e.context.ConnectionSettings_L3\x12*\n\x02l4\x18\x04 \x01(\x0b\x32\x1e.context.ConnectionSettings_L4\"\xf3\x01\n\nConnection\x12,\n\rconnection_id\x18\x01 \x01(\x0b\x32\x15.context.ConnectionId\x12&\n\nservice_id\x18\x02 \x01(\x0b\x32\x12.context.ServiceId\x12\x33\n\x16path_hops_endpoint_ids\x18\x03 \x03(\x0b\x32\x13.context.EndPointId\x12+\n\x0fsub_service_ids\x18\x04 \x03(\x0b\x32\x12.context.ServiceId\x12-\n\x08settings\x18\x05 \x01(\x0b\x32\x1b.context.ConnectionSettings\"A\n\x10\x43onnectionIdList\x12-\n\x0e\x63onnection_ids\x18\x01 \x03(\x0b\x32\x15.context.ConnectionId\":\n\x0e\x43onnectionList\x12(\n\x0b\x63onnections\x18\x01 \x03(\x0b\x32\x13.context.Connection\"^\n\x0f\x43onnectionEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12,\n\rconnection_id\x18\x02 \x01(\x0b\x32\x15.context.ConnectionId\"\x82\x01\n\nEndPointId\x12(\n\x0btopology_id\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12$\n\tdevice_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\x12$\n\rendpoint_uuid\x18\x03 \x01(\x0b\x32\r.context.Uuid\"\x86\x01\n\x08\x45ndPoint\x12(\n\x0b\x65ndpoint_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x15\n\rendpoint_type\x18\x02 \x01(\t\x12\x39\n\x10kpi_sample_types\x18\x03 \x03(\x0e\x32\x1f.kpi_sample_types.KpiSampleType\"A\n\x11\x43onfigRule_Custom\x12\x14\n\x0cresource_key\x18\x01 \x01(\t\x12\x16\n\x0eresource_value\x18\x02 \x01(\t\"]\n\x0e\x43onfigRule_ACL\x12(\n\x0b\x65ndpoint_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12!\n\x08rule_set\x18\x02 \x01(\x0b\x32\x0f.acl.AclRuleSet\"\x9c\x01\n\nConfigRule\x12)\n\x06\x61\x63tion\x18\x01 \x01(\x0e\x32\x19.context.ConfigActionEnum\x12,\n\x06\x63ustom\x18\x02 \x01(\x0b\x32\x1a.context.ConfigRule_CustomH\x00\x12&\n\x03\x61\x63l\x18\x03 \x01(\x0b\x32\x17.context.ConfigRule_ACLH\x00\x42\r\n\x0b\x63onfig_rule\"F\n\x11\x43onstraint_Custom\x12\x17\n\x0f\x63onstraint_type\x18\x01 \x01(\t\x12\x18\n\x10\x63onstraint_value\x18\x02 \x01(\t\"E\n\x13\x43onstraint_Schedule\x12\x17\n\x0fstart_timestamp\x18\x01 \x01(\x02\x12\x15\n\rduration_days\x18\x02 \x01(\x02\"3\n\x0cGPS_Position\x12\x10\n\x08latitude\x18\x01 \x01(\x02\x12\x11\n\tlongitude\x18\x02 \x01(\x02\"\x94\x01\n\x1b\x43onstraint_EndPointLocation\x12(\n\x0b\x65ndpoint_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x10\n\x06region\x18\x02 \x01(\tH\x00\x12-\n\x0cgps_position\x18\x03 \x01(\x0b\x32\x15.context.GPS_PositionH\x00\x42\n\n\x08location\"0\n\x16\x43onstraint_SLA_Latency\x12\x16\n\x0e\x65\x32\x65_latency_ms\x18\x01 \x01(\x02\"0\n\x17\x43onstraint_SLA_Capacity\x12\x15\n\rcapacity_gbps\x18\x01 \x01(\x02\"M\n\x1b\x43onstraint_SLA_Availability\x12\x1a\n\x12num_disjoint_paths\x18\x01 \x01(\r\x12\x12\n\nall_active\x18\x02 \x01(\x08\"\xf1\x02\n\nConstraint\x12,\n\x06\x63ustom\x18\x01 \x01(\x0b\x32\x1a.context.Constraint_CustomH\x00\x12\x30\n\x08schedule\x18\x02 \x01(\x0b\x32\x1c.context.Constraint_ScheduleH\x00\x12\x41\n\x11\x65ndpoint_location\x18\x03 \x01(\x0b\x32$.context.Constraint_EndPointLocationH\x00\x12\x38\n\x0csla_capacity\x18\x04 \x01(\x0b\x32 .context.Constraint_SLA_CapacityH\x00\x12\x36\n\x0bsla_latency\x18\x05 \x01(\x0b\x32\x1f.context.Constraint_SLA_LatencyH\x00\x12@\n\x10sla_availability\x18\x06 \x01(\x0b\x32$.context.Constraint_SLA_AvailabilityH\x00\x42\x0c\n\nconstraint\"^\n\x12TeraFlowController\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x12\n\nip_address\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\r\"U\n\x14\x41uthenticationResult\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x15\n\rauthenticated\x18\x02 \x01(\x08*j\n\rEventTypeEnum\x12\x17\n\x13\x45VENTTYPE_UNDEFINED\x10\x00\x12\x14\n\x10\x45VENTTYPE_CREATE\x10\x01\x12\x14\n\x10\x45VENTTYPE_UPDATE\x10\x02\x12\x14\n\x10\x45VENTTYPE_REMOVE\x10\x03*\xc5\x01\n\x10\x44\x65viceDriverEnum\x12\x1a\n\x16\x44\x45VICEDRIVER_UNDEFINED\x10\x00\x12\x1b\n\x17\x44\x45VICEDRIVER_OPENCONFIG\x10\x01\x12\x1e\n\x1a\x44\x45VICEDRIVER_TRANSPORT_API\x10\x02\x12\x13\n\x0f\x44\x45VICEDRIVER_P4\x10\x03\x12&\n\"DEVICEDRIVER_IETF_NETWORK_TOPOLOGY\x10\x04\x12\x1b\n\x17\x44\x45VICEDRIVER_ONF_TR_352\x10\x05*\x8f\x01\n\x1b\x44\x65viceOperationalStatusEnum\x12%\n!DEVICEOPERATIONALSTATUS_UNDEFINED\x10\x00\x12$\n DEVICEOPERATIONALSTATUS_DISABLED\x10\x01\x12#\n\x1f\x44\x45VICEOPERATIONALSTATUS_ENABLED\x10\x02*\x81\x01\n\x0fServiceTypeEnum\x12\x17\n\x13SERVICETYPE_UNKNOWN\x10\x00\x12\x14\n\x10SERVICETYPE_L3NM\x10\x01\x12\x14\n\x10SERVICETYPE_L2NM\x10\x02\x12)\n%SERVICETYPE_TAPI_CONNECTIVITY_SERVICE\x10\x03*\x88\x01\n\x11ServiceStatusEnum\x12\x1b\n\x17SERVICESTATUS_UNDEFINED\x10\x00\x12\x19\n\x15SERVICESTATUS_PLANNED\x10\x01\x12\x18\n\x14SERVICESTATUS_ACTIVE\x10\x02\x12!\n\x1dSERVICESTATUS_PENDING_REMOVAL\x10\x03*\x8b\x01\n\x0fSliceStatusEnum\x12\x19\n\x15SLICESTATUS_UNDEFINED\x10\x00\x12\x17\n\x13SLICESTATUS_PLANNED\x10\x01\x12\x14\n\x10SLICESTATUS_INIT\x10\x02\x12\x16\n\x12SLICESTATUS_ACTIVE\x10\x03\x12\x16\n\x12SLICESTATUS_DEINIT\x10\x04*]\n\x10\x43onfigActionEnum\x12\x1a\n\x16\x43ONFIGACTION_UNDEFINED\x10\x00\x12\x14\n\x10\x43ONFIGACTION_SET\x10\x01\x12\x17\n\x13\x43ONFIGACTION_DELETE\x10\x02\x32\xef\x12\n\x0e\x43ontextService\x12:\n\x0eListContextIds\x12\x0e.context.Empty\x1a\x16.context.ContextIdList\"\x00\x12\x36\n\x0cListContexts\x12\x0e.context.Empty\x1a\x14.context.ContextList\"\x00\x12\x34\n\nGetContext\x12\x12.context.ContextId\x1a\x10.context.Context\"\x00\x12\x34\n\nSetContext\x12\x10.context.Context\x1a\x12.context.ContextId\"\x00\x12\x35\n\rRemoveContext\x12\x12.context.ContextId\x1a\x0e.context.Empty\"\x00\x12=\n\x10GetContextEvents\x12\x0e.context.Empty\x1a\x15.context.ContextEvent\"\x00\x30\x01\x12@\n\x0fListTopologyIds\x12\x12.context.ContextId\x1a\x17.context.TopologyIdList\"\x00\x12=\n\x0eListTopologies\x12\x12.context.ContextId\x1a\x15.context.TopologyList\"\x00\x12\x37\n\x0bGetTopology\x12\x13.context.TopologyId\x1a\x11.context.Topology\"\x00\x12\x37\n\x0bSetTopology\x12\x11.context.Topology\x1a\x13.context.TopologyId\"\x00\x12\x37\n\x0eRemoveTopology\x12\x13.context.TopologyId\x1a\x0e.context.Empty\"\x00\x12?\n\x11GetTopologyEvents\x12\x0e.context.Empty\x1a\x16.context.TopologyEvent\"\x00\x30\x01\x12\x38\n\rListDeviceIds\x12\x0e.context.Empty\x1a\x15.context.DeviceIdList\"\x00\x12\x34\n\x0bListDevices\x12\x0e.context.Empty\x1a\x13.context.DeviceList\"\x00\x12\x31\n\tGetDevice\x12\x11.context.DeviceId\x1a\x0f.context.Device\"\x00\x12\x31\n\tSetDevice\x12\x0f.context.Device\x1a\x11.context.DeviceId\"\x00\x12\x33\n\x0cRemoveDevice\x12\x11.context.DeviceId\x1a\x0e.context.Empty\"\x00\x12;\n\x0fGetDeviceEvents\x12\x0e.context.Empty\x1a\x14.context.DeviceEvent\"\x00\x30\x01\x12\x34\n\x0bListLinkIds\x12\x0e.context.Empty\x1a\x13.context.LinkIdList\"\x00\x12\x30\n\tListLinks\x12\x0e.context.Empty\x1a\x11.context.LinkList\"\x00\x12+\n\x07GetLink\x12\x0f.context.LinkId\x1a\r.context.Link\"\x00\x12+\n\x07SetLink\x12\r.context.Link\x1a\x0f.context.LinkId\"\x00\x12/\n\nRemoveLink\x12\x0f.context.LinkId\x1a\x0e.context.Empty\"\x00\x12\x37\n\rGetLinkEvents\x12\x0e.context.Empty\x1a\x12.context.LinkEvent\"\x00\x30\x01\x12>\n\x0eListServiceIds\x12\x12.context.ContextId\x1a\x16.context.ServiceIdList\"\x00\x12:\n\x0cListServices\x12\x12.context.ContextId\x1a\x14.context.ServiceList\"\x00\x12\x34\n\nGetService\x12\x12.context.ServiceId\x1a\x10.context.Service\"\x00\x12\x34\n\nSetService\x12\x10.context.Service\x1a\x12.context.ServiceId\"\x00\x12\x35\n\rRemoveService\x12\x12.context.ServiceId\x1a\x0e.context.Empty\"\x00\x12=\n\x10GetServiceEvents\x12\x0e.context.Empty\x1a\x15.context.ServiceEvent\"\x00\x30\x01\x12:\n\x0cListSliceIds\x12\x12.context.ContextId\x1a\x14.context.SliceIdList\"\x00\x12\x36\n\nListSlices\x12\x12.context.ContextId\x1a\x12.context.SliceList\"\x00\x12.\n\x08GetSlice\x12\x10.context.SliceId\x1a\x0e.context.Slice\"\x00\x12.\n\x08SetSlice\x12\x0e.context.Slice\x1a\x10.context.SliceId\"\x00\x12\x31\n\x0bRemoveSlice\x12\x10.context.SliceId\x1a\x0e.context.Empty\"\x00\x12\x39\n\x0eGetSliceEvents\x12\x0e.context.Empty\x1a\x13.context.SliceEvent\"\x00\x30\x01\x12\x44\n\x11ListConnectionIds\x12\x12.context.ServiceId\x1a\x19.context.ConnectionIdList\"\x00\x12@\n\x0fListConnections\x12\x12.context.ServiceId\x1a\x17.context.ConnectionList\"\x00\x12=\n\rGetConnection\x12\x15.context.ConnectionId\x1a\x13.context.Connection\"\x00\x12=\n\rSetConnection\x12\x13.context.Connection\x1a\x15.context.ConnectionId\"\x00\x12;\n\x10RemoveConnection\x12\x15.context.ConnectionId\x1a\x0e.context.Empty\"\x00\x12\x43\n\x13GetConnectionEvents\x12\x0e.context.Empty\x1a\x18.context.ConnectionEvent\"\x00\x30\x01\x62\x06proto3' , - dependencies=[kpi__sample__types__pb2.DESCRIPTOR,]) + dependencies=[acl__pb2.DESCRIPTOR,kpi__sample__types__pb2.DESCRIPTOR,]) _EVENTTYPEENUM = _descriptor.EnumDescriptor( name='EventTypeEnum', @@ -55,8 +56,8 @@ _EVENTTYPEENUM = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, - serialized_start=4310, - serialized_end=4416, + serialized_start=6042, + serialized_end=6148, ) _sym_db.RegisterEnumDescriptor(_EVENTTYPEENUM) @@ -101,8 +102,8 @@ _DEVICEDRIVERENUM = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, - serialized_start=4419, - serialized_end=4616, + serialized_start=6151, + serialized_end=6348, ) _sym_db.RegisterEnumDescriptor(_DEVICEDRIVERENUM) @@ -132,8 +133,8 @@ _DEVICEOPERATIONALSTATUSENUM = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, - serialized_start=4619, - serialized_end=4762, + serialized_start=6351, + serialized_end=6494, ) _sym_db.RegisterEnumDescriptor(_DEVICEOPERATIONALSTATUSENUM) @@ -168,8 +169,8 @@ _SERVICETYPEENUM = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, - serialized_start=4765, - serialized_end=4894, + serialized_start=6497, + serialized_end=6626, ) _sym_db.RegisterEnumDescriptor(_SERVICETYPEENUM) @@ -204,8 +205,8 @@ _SERVICESTATUSENUM = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, - serialized_start=4897, - serialized_end=5033, + serialized_start=6629, + serialized_end=6765, ) _sym_db.RegisterEnumDescriptor(_SERVICESTATUSENUM) @@ -245,8 +246,8 @@ _SLICESTATUSENUM = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, - serialized_start=5036, - serialized_end=5175, + serialized_start=6768, + serialized_end=6907, ) _sym_db.RegisterEnumDescriptor(_SLICESTATUSENUM) @@ -276,8 +277,8 @@ _CONFIGACTIONENUM = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, - serialized_start=5177, - serialized_end=5270, + serialized_start=6909, + serialized_end=7002, ) _sym_db.RegisterEnumDescriptor(_CONFIGACTIONENUM) @@ -334,8 +335,8 @@ _EMPTY = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=50, - serialized_end=57, + serialized_start=61, + serialized_end=68, ) @@ -366,8 +367,8 @@ _UUID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=59, - serialized_end=79, + serialized_start=70, + serialized_end=90, ) @@ -405,8 +406,8 @@ _EVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=81, - serialized_end=151, + serialized_start=92, + serialized_end=162, ) @@ -437,8 +438,8 @@ _CONTEXTID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=153, - serialized_end=201, + serialized_start=164, + serialized_end=212, ) @@ -490,8 +491,8 @@ _CONTEXT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=204, - serialized_end=386, + serialized_start=215, + serialized_end=397, ) @@ -522,8 +523,8 @@ _CONTEXTIDLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=388, - serialized_end=444, + serialized_start=399, + serialized_end=455, ) @@ -554,8 +555,8 @@ _CONTEXTLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=446, - serialized_end=495, + serialized_start=457, + serialized_end=506, ) @@ -593,8 +594,8 @@ _CONTEXTEVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=497, - serialized_end=582, + serialized_start=508, + serialized_end=593, ) @@ -632,8 +633,8 @@ _TOPOLOGYID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=584, - serialized_end=674, + serialized_start=595, + serialized_end=685, ) @@ -678,8 +679,8 @@ _TOPOLOGY = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=676, - serialized_end=802, + serialized_start=687, + serialized_end=813, ) @@ -710,8 +711,8 @@ _TOPOLOGYIDLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=804, - serialized_end=863, + serialized_start=815, + serialized_end=874, ) @@ -742,8 +743,8 @@ _TOPOLOGYLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=865, - serialized_end=918, + serialized_start=876, + serialized_end=929, ) @@ -781,8 +782,8 @@ _TOPOLOGYEVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=920, - serialized_end=1008, + serialized_start=931, + serialized_end=1019, ) @@ -813,8 +814,8 @@ _DEVICEID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1010, - serialized_end=1056, + serialized_start=1021, + serialized_end=1067, ) @@ -880,8 +881,8 @@ _DEVICE = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1059, - serialized_end=1341, + serialized_start=1070, + serialized_end=1352, ) @@ -912,8 +913,8 @@ _DEVICECONFIG = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1343, - serialized_end=1400, + serialized_start=1354, + serialized_end=1411, ) @@ -944,8 +945,8 @@ _DEVICEIDLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1402, - serialized_end=1455, + serialized_start=1413, + serialized_end=1466, ) @@ -976,8 +977,8 @@ _DEVICELIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1457, - serialized_end=1503, + serialized_start=1468, + serialized_end=1514, ) @@ -1015,8 +1016,8 @@ _DEVICEEVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1505, - serialized_end=1587, + serialized_start=1516, + serialized_end=1598, ) @@ -1047,8 +1048,8 @@ _LINKID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1589, - serialized_end=1631, + serialized_start=1600, + serialized_end=1642, ) @@ -1086,8 +1087,8 @@ _LINK = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1633, - serialized_end=1721, + serialized_start=1644, + serialized_end=1732, ) @@ -1118,8 +1119,8 @@ _LINKIDLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1723, - serialized_end=1770, + serialized_start=1734, + serialized_end=1781, ) @@ -1150,8 +1151,8 @@ _LINKLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1772, - serialized_end=1812, + serialized_start=1783, + serialized_end=1823, ) @@ -1189,8 +1190,8 @@ _LINKEVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1814, - serialized_end=1890, + serialized_start=1825, + serialized_end=1901, ) @@ -1228,8 +1229,8 @@ _SERVICEID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1892, - serialized_end=1980, + serialized_start=1903, + serialized_end=1991, ) @@ -1295,8 +1296,8 @@ _SERVICE = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=1983, - serialized_end=2277, + serialized_start=1994, + serialized_end=2288, ) @@ -1327,8 +1328,8 @@ _SERVICESTATUS = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2279, - serialized_end=2346, + serialized_start=2290, + serialized_end=2357, ) @@ -1359,8 +1360,8 @@ _SERVICECONFIG = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2348, - serialized_end=2406, + serialized_start=2359, + serialized_end=2417, ) @@ -1391,8 +1392,8 @@ _SERVICEIDLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2408, - serialized_end=2464, + serialized_start=2419, + serialized_end=2475, ) @@ -1423,8 +1424,8 @@ _SERVICELIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2466, - serialized_end=2515, + serialized_start=2477, + serialized_end=2526, ) @@ -1462,8 +1463,8 @@ _SERVICEEVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2517, - serialized_end=2602, + serialized_start=2528, + serialized_end=2613, ) @@ -1501,8 +1502,8 @@ _SLICEID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2604, - serialized_end=2688, + serialized_start=2615, + serialized_end=2699, ) @@ -1568,8 +1569,8 @@ _SLICE = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2691, - serialized_end=2968, + serialized_start=2702, + serialized_end=2979, ) @@ -1600,8 +1601,8 @@ _SLICESTATUS = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=2970, - serialized_end=3031, + serialized_start=2981, + serialized_end=3042, ) @@ -1632,8 +1633,8 @@ _SLICEIDLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3033, - serialized_end=3083, + serialized_start=3044, + serialized_end=3094, ) @@ -1664,8 +1665,8 @@ _SLICELIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3085, - serialized_end=3128, + serialized_start=3096, + serialized_end=3139, ) @@ -1703,8 +1704,8 @@ _SLICEEVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3130, - serialized_end=3209, + serialized_start=3141, + serialized_end=3220, ) @@ -1735,8 +1736,273 @@ _CONNECTIONID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3211, - serialized_end=3265, + serialized_start=3222, + serialized_end=3276, +) + + +_CONNECTIONSETTINGS_L0 = _descriptor.Descriptor( + name='ConnectionSettings_L0', + full_name='context.ConnectionSettings_L0', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='lsp_symbolic_name', full_name='context.ConnectionSettings_L0.lsp_symbolic_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3278, + serialized_end=3328, +) + + +_CONNECTIONSETTINGS_L2 = _descriptor.Descriptor( + name='ConnectionSettings_L2', + full_name='context.ConnectionSettings_L2', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='src_mac_address', full_name='context.ConnectionSettings_L2.src_mac_address', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='dst_mac_address', full_name='context.ConnectionSettings_L2.dst_mac_address', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='ether_type', full_name='context.ConnectionSettings_L2.ether_type', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='vlan_id', full_name='context.ConnectionSettings_L2.vlan_id', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='mpls_label', full_name='context.ConnectionSettings_L2.mpls_label', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='mpls_traffic_class', full_name='context.ConnectionSettings_L2.mpls_traffic_class', index=5, + number=6, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3331, + serialized_end=3489, +) + + +_CONNECTIONSETTINGS_L3 = _descriptor.Descriptor( + name='ConnectionSettings_L3', + full_name='context.ConnectionSettings_L3', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='src_ip_address', full_name='context.ConnectionSettings_L3.src_ip_address', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='dst_ip_address', full_name='context.ConnectionSettings_L3.dst_ip_address', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='dscp', full_name='context.ConnectionSettings_L3.dscp', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='protocol', full_name='context.ConnectionSettings_L3.protocol', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='ttl', full_name='context.ConnectionSettings_L3.ttl', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3491, + serialized_end=3607, +) + + +_CONNECTIONSETTINGS_L4 = _descriptor.Descriptor( + name='ConnectionSettings_L4', + full_name='context.ConnectionSettings_L4', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='src_port', full_name='context.ConnectionSettings_L4.src_port', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='dst_port', full_name='context.ConnectionSettings_L4.dst_port', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='tcp_flags', full_name='context.ConnectionSettings_L4.tcp_flags', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='ttl', full_name='context.ConnectionSettings_L4.ttl', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3609, + serialized_end=3700, +) + + +_CONNECTIONSETTINGS = _descriptor.Descriptor( + name='ConnectionSettings', + full_name='context.ConnectionSettings', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='l0', full_name='context.ConnectionSettings.l0', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='l2', full_name='context.ConnectionSettings.l2', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='l3', full_name='context.ConnectionSettings.l3', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='l4', full_name='context.ConnectionSettings.l4', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3703, + serialized_end=3899, ) @@ -1749,30 +2015,310 @@ _CONNECTION = _descriptor.Descriptor( create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='connection_id', full_name='context.Connection.connection_id', index=0, - number=1, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='connection_id', full_name='context.Connection.connection_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_id', full_name='context.Connection.service_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='path_hops_endpoint_ids', full_name='context.Connection.path_hops_endpoint_ids', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='sub_service_ids', full_name='context.Connection.sub_service_ids', index=3, + number=4, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='settings', full_name='context.Connection.settings', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3902, + serialized_end=4145, +) + + +_CONNECTIONIDLIST = _descriptor.Descriptor( + name='ConnectionIdList', + full_name='context.ConnectionIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='connection_ids', full_name='context.ConnectionIdList.connection_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4147, + serialized_end=4212, +) + + +_CONNECTIONLIST = _descriptor.Descriptor( + name='ConnectionList', + full_name='context.ConnectionList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='connections', full_name='context.ConnectionList.connections', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4214, + serialized_end=4272, +) + + +_CONNECTIONEVENT = _descriptor.Descriptor( + name='ConnectionEvent', + full_name='context.ConnectionEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.ConnectionEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='connection_id', full_name='context.ConnectionEvent.connection_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4274, + serialized_end=4368, +) + + +_ENDPOINTID = _descriptor.Descriptor( + name='EndPointId', + full_name='context.EndPointId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='topology_id', full_name='context.EndPointId.topology_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_id', full_name='context.EndPointId.device_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='endpoint_uuid', full_name='context.EndPointId.endpoint_uuid', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4371, + serialized_end=4501, +) + + +_ENDPOINT = _descriptor.Descriptor( + name='EndPoint', + full_name='context.EndPoint', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='endpoint_id', full_name='context.EndPoint.endpoint_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='endpoint_type', full_name='context.EndPoint.endpoint_type', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='kpi_sample_types', full_name='context.EndPoint.kpi_sample_types', index=2, + number=3, type=14, cpp_type=8, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4504, + serialized_end=4638, +) + + +_CONFIGRULE_CUSTOM = _descriptor.Descriptor( + name='ConfigRule_Custom', + full_name='context.ConfigRule_Custom', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='resource_key', full_name='context.ConfigRule_Custom.resource_key', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='service_id', full_name='context.Connection.service_id', index=1, - number=2, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='resource_value', full_name='context.ConfigRule_Custom.resource_value', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4640, + serialized_end=4705, +) + + +_CONFIGRULE_ACL = _descriptor.Descriptor( + name='ConfigRule_ACL', + full_name='context.ConfigRule_ACL', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ _descriptor.FieldDescriptor( - name='path_hops_endpoint_ids', full_name='context.Connection.path_hops_endpoint_ids', index=2, - number=3, type=11, cpp_type=10, label=3, - has_default_value=False, default_value=[], + name='endpoint_id', full_name='context.ConfigRule_ACL.endpoint_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='sub_service_ids', full_name='context.Connection.sub_service_ids', index=3, - number=4, type=11, cpp_type=10, label=3, - has_default_value=False, default_value=[], + name='rule_set', full_name='context.ConfigRule_ACL.rule_set', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -1788,23 +2334,37 @@ _CONNECTION = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3268, - serialized_end=3464, + serialized_start=4707, + serialized_end=4800, ) -_CONNECTIONIDLIST = _descriptor.Descriptor( - name='ConnectionIdList', - full_name='context.ConnectionIdList', +_CONFIGRULE = _descriptor.Descriptor( + name='ConfigRule', + full_name='context.ConfigRule', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='connection_ids', full_name='context.ConnectionIdList.connection_ids', index=0, - number=1, type=11, cpp_type=10, label=3, - has_default_value=False, default_value=[], + name='action', full_name='context.ConfigRule.action', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='custom', full_name='context.ConfigRule.custom', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='acl', full_name='context.ConfigRule.acl', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -1819,24 +2379,36 @@ _CONNECTIONIDLIST = _descriptor.Descriptor( syntax='proto3', extension_ranges=[], oneofs=[ - ], - serialized_start=3466, - serialized_end=3531, + _descriptor.OneofDescriptor( + name='config_rule', full_name='context.ConfigRule.config_rule', + index=0, containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[]), + ], + serialized_start=4803, + serialized_end=4959, ) -_CONNECTIONLIST = _descriptor.Descriptor( - name='ConnectionList', - full_name='context.ConnectionList', +_CONSTRAINT_CUSTOM = _descriptor.Descriptor( + name='Constraint_Custom', + full_name='context.Constraint_Custom', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='connections', full_name='context.ConnectionList.connections', index=0, - number=1, type=11, cpp_type=10, label=3, - has_default_value=False, default_value=[], + name='constraint_type', full_name='context.Constraint_Custom.constraint_type', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='constraint_value', full_name='context.Constraint_Custom.constraint_value', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -1852,30 +2424,30 @@ _CONNECTIONLIST = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3533, - serialized_end=3591, + serialized_start=4961, + serialized_end=5031, ) -_CONNECTIONEVENT = _descriptor.Descriptor( - name='ConnectionEvent', - full_name='context.ConnectionEvent', +_CONSTRAINT_SCHEDULE = _descriptor.Descriptor( + name='Constraint_Schedule', + full_name='context.Constraint_Schedule', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='event', full_name='context.ConnectionEvent.event', index=0, - number=1, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='start_timestamp', full_name='context.Constraint_Schedule.start_timestamp', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='connection_id', full_name='context.ConnectionEvent.connection_id', index=1, - number=2, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='duration_days', full_name='context.Constraint_Schedule.duration_days', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -1891,37 +2463,30 @@ _CONNECTIONEVENT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3593, - serialized_end=3687, + serialized_start=5033, + serialized_end=5102, ) -_ENDPOINTID = _descriptor.Descriptor( - name='EndPointId', - full_name='context.EndPointId', +_GPS_POSITION = _descriptor.Descriptor( + name='GPS_Position', + full_name='context.GPS_Position', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='topology_id', full_name='context.EndPointId.topology_id', index=0, - number=1, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='device_id', full_name='context.EndPointId.device_id', index=1, - number=2, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='latitude', full_name='context.GPS_Position.latitude', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='endpoint_uuid', full_name='context.EndPointId.endpoint_uuid', index=2, - number=3, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='longitude', full_name='context.GPS_Position.longitude', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -1937,37 +2502,74 @@ _ENDPOINTID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3690, - serialized_end=3820, + serialized_start=5104, + serialized_end=5155, ) -_ENDPOINT = _descriptor.Descriptor( - name='EndPoint', - full_name='context.EndPoint', +_CONSTRAINT_ENDPOINTLOCATION = _descriptor.Descriptor( + name='Constraint_EndPointLocation', + full_name='context.Constraint_EndPointLocation', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='endpoint_id', full_name='context.EndPoint.endpoint_id', index=0, + name='endpoint_id', full_name='context.Constraint_EndPointLocation.endpoint_id', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='endpoint_type', full_name='context.EndPoint.endpoint_type', index=1, + name='region', full_name='context.Constraint_EndPointLocation.region', index=1, number=2, type=9, cpp_type=9, label=1, has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='kpi_sample_types', full_name='context.EndPoint.kpi_sample_types', index=2, - number=3, type=14, cpp_type=8, label=3, - has_default_value=False, default_value=[], + name='gps_position', full_name='context.Constraint_EndPointLocation.gps_position', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='location', full_name='context.Constraint_EndPointLocation.location', + index=0, containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[]), + ], + serialized_start=5158, + serialized_end=5306, +) + + +_CONSTRAINT_SLA_LATENCY = _descriptor.Descriptor( + name='Constraint_SLA_Latency', + full_name='context.Constraint_SLA_Latency', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='e2e_latency_ms', full_name='context.Constraint_SLA_Latency.e2e_latency_ms', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -1983,37 +2585,62 @@ _ENDPOINT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3823, - serialized_end=3957, + serialized_start=5308, + serialized_end=5356, ) -_CONFIGRULE = _descriptor.Descriptor( - name='ConfigRule', - full_name='context.ConfigRule', +_CONSTRAINT_SLA_CAPACITY = _descriptor.Descriptor( + name='Constraint_SLA_Capacity', + full_name='context.Constraint_SLA_Capacity', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='action', full_name='context.ConfigRule.action', index=0, - number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=0, + name='capacity_gbps', full_name='context.Constraint_SLA_Capacity.capacity_gbps', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=5358, + serialized_end=5406, +) + + +_CONSTRAINT_SLA_AVAILABILITY = _descriptor.Descriptor( + name='Constraint_SLA_Availability', + full_name='context.Constraint_SLA_Availability', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ _descriptor.FieldDescriptor( - name='resource_key', full_name='context.ConfigRule.resource_key', index=1, - number=2, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=b"".decode('utf-8'), + name='num_disjoint_paths', full_name='context.Constraint_SLA_Availability.num_disjoint_paths', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='resource_value', full_name='context.ConfigRule.resource_value', index=2, - number=3, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=b"".decode('utf-8'), + name='all_active', full_name='context.Constraint_SLA_Availability.all_active', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -2029,8 +2656,8 @@ _CONFIGRULE = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=3959, - serialized_end=4060, + serialized_start=5408, + serialized_end=5485, ) @@ -2043,16 +2670,44 @@ _CONSTRAINT = _descriptor.Descriptor( create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='constraint_type', full_name='context.Constraint.constraint_type', index=0, - number=1, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=b"".decode('utf-8'), + name='custom', full_name='context.Constraint.custom', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( - name='constraint_value', full_name='context.Constraint.constraint_value', index=1, - number=2, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=b"".decode('utf-8'), + name='schedule', full_name='context.Constraint.schedule', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='endpoint_location', full_name='context.Constraint.endpoint_location', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='sla_capacity', full_name='context.Constraint.sla_capacity', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='sla_latency', full_name='context.Constraint.sla_latency', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='sla_availability', full_name='context.Constraint.sla_availability', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -2067,9 +2722,14 @@ _CONSTRAINT = _descriptor.Descriptor( syntax='proto3', extension_ranges=[], oneofs=[ - ], - serialized_start=4062, - serialized_end=4125, + _descriptor.OneofDescriptor( + name='constraint', full_name='context.Constraint.constraint', + index=0, containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[]), + ], + serialized_start=5488, + serialized_end=5857, ) @@ -2114,8 +2774,8 @@ _TERAFLOWCONTROLLER = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=4127, - serialized_end=4221, + serialized_start=5859, + serialized_end=5953, ) @@ -2153,8 +2813,8 @@ _AUTHENTICATIONRESULT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], - serialized_start=4223, - serialized_end=4308, + serialized_start=5955, + serialized_end=6040, ) _EVENT.fields_by_name['event_type'].enum_type = _EVENTTYPEENUM @@ -2222,10 +2882,15 @@ _SLICELIST.fields_by_name['slices'].message_type = _SLICE _SLICEEVENT.fields_by_name['event'].message_type = _EVENT _SLICEEVENT.fields_by_name['slice_id'].message_type = _SLICEID _CONNECTIONID.fields_by_name['connection_uuid'].message_type = _UUID +_CONNECTIONSETTINGS.fields_by_name['l0'].message_type = _CONNECTIONSETTINGS_L0 +_CONNECTIONSETTINGS.fields_by_name['l2'].message_type = _CONNECTIONSETTINGS_L2 +_CONNECTIONSETTINGS.fields_by_name['l3'].message_type = _CONNECTIONSETTINGS_L3 +_CONNECTIONSETTINGS.fields_by_name['l4'].message_type = _CONNECTIONSETTINGS_L4 _CONNECTION.fields_by_name['connection_id'].message_type = _CONNECTIONID _CONNECTION.fields_by_name['service_id'].message_type = _SERVICEID _CONNECTION.fields_by_name['path_hops_endpoint_ids'].message_type = _ENDPOINTID _CONNECTION.fields_by_name['sub_service_ids'].message_type = _SERVICEID +_CONNECTION.fields_by_name['settings'].message_type = _CONNECTIONSETTINGS _CONNECTIONIDLIST.fields_by_name['connection_ids'].message_type = _CONNECTIONID _CONNECTIONLIST.fields_by_name['connections'].message_type = _CONNECTION _CONNECTIONEVENT.fields_by_name['event'].message_type = _EVENT @@ -2235,7 +2900,49 @@ _ENDPOINTID.fields_by_name['device_id'].message_type = _DEVICEID _ENDPOINTID.fields_by_name['endpoint_uuid'].message_type = _UUID _ENDPOINT.fields_by_name['endpoint_id'].message_type = _ENDPOINTID _ENDPOINT.fields_by_name['kpi_sample_types'].enum_type = kpi__sample__types__pb2._KPISAMPLETYPE +_CONFIGRULE_ACL.fields_by_name['endpoint_id'].message_type = _ENDPOINTID +_CONFIGRULE_ACL.fields_by_name['rule_set'].message_type = acl__pb2._ACLRULESET _CONFIGRULE.fields_by_name['action'].enum_type = _CONFIGACTIONENUM +_CONFIGRULE.fields_by_name['custom'].message_type = _CONFIGRULE_CUSTOM +_CONFIGRULE.fields_by_name['acl'].message_type = _CONFIGRULE_ACL +_CONFIGRULE.oneofs_by_name['config_rule'].fields.append( + _CONFIGRULE.fields_by_name['custom']) +_CONFIGRULE.fields_by_name['custom'].containing_oneof = _CONFIGRULE.oneofs_by_name['config_rule'] +_CONFIGRULE.oneofs_by_name['config_rule'].fields.append( + _CONFIGRULE.fields_by_name['acl']) +_CONFIGRULE.fields_by_name['acl'].containing_oneof = _CONFIGRULE.oneofs_by_name['config_rule'] +_CONSTRAINT_ENDPOINTLOCATION.fields_by_name['endpoint_id'].message_type = _ENDPOINTID +_CONSTRAINT_ENDPOINTLOCATION.fields_by_name['gps_position'].message_type = _GPS_POSITION +_CONSTRAINT_ENDPOINTLOCATION.oneofs_by_name['location'].fields.append( + _CONSTRAINT_ENDPOINTLOCATION.fields_by_name['region']) +_CONSTRAINT_ENDPOINTLOCATION.fields_by_name['region'].containing_oneof = _CONSTRAINT_ENDPOINTLOCATION.oneofs_by_name['location'] +_CONSTRAINT_ENDPOINTLOCATION.oneofs_by_name['location'].fields.append( + _CONSTRAINT_ENDPOINTLOCATION.fields_by_name['gps_position']) +_CONSTRAINT_ENDPOINTLOCATION.fields_by_name['gps_position'].containing_oneof = _CONSTRAINT_ENDPOINTLOCATION.oneofs_by_name['location'] +_CONSTRAINT.fields_by_name['custom'].message_type = _CONSTRAINT_CUSTOM +_CONSTRAINT.fields_by_name['schedule'].message_type = _CONSTRAINT_SCHEDULE +_CONSTRAINT.fields_by_name['endpoint_location'].message_type = _CONSTRAINT_ENDPOINTLOCATION +_CONSTRAINT.fields_by_name['sla_capacity'].message_type = _CONSTRAINT_SLA_CAPACITY +_CONSTRAINT.fields_by_name['sla_latency'].message_type = _CONSTRAINT_SLA_LATENCY +_CONSTRAINT.fields_by_name['sla_availability'].message_type = _CONSTRAINT_SLA_AVAILABILITY +_CONSTRAINT.oneofs_by_name['constraint'].fields.append( + _CONSTRAINT.fields_by_name['custom']) +_CONSTRAINT.fields_by_name['custom'].containing_oneof = _CONSTRAINT.oneofs_by_name['constraint'] +_CONSTRAINT.oneofs_by_name['constraint'].fields.append( + _CONSTRAINT.fields_by_name['schedule']) +_CONSTRAINT.fields_by_name['schedule'].containing_oneof = _CONSTRAINT.oneofs_by_name['constraint'] +_CONSTRAINT.oneofs_by_name['constraint'].fields.append( + _CONSTRAINT.fields_by_name['endpoint_location']) +_CONSTRAINT.fields_by_name['endpoint_location'].containing_oneof = _CONSTRAINT.oneofs_by_name['constraint'] +_CONSTRAINT.oneofs_by_name['constraint'].fields.append( + _CONSTRAINT.fields_by_name['sla_capacity']) +_CONSTRAINT.fields_by_name['sla_capacity'].containing_oneof = _CONSTRAINT.oneofs_by_name['constraint'] +_CONSTRAINT.oneofs_by_name['constraint'].fields.append( + _CONSTRAINT.fields_by_name['sla_latency']) +_CONSTRAINT.fields_by_name['sla_latency'].containing_oneof = _CONSTRAINT.oneofs_by_name['constraint'] +_CONSTRAINT.oneofs_by_name['constraint'].fields.append( + _CONSTRAINT.fields_by_name['sla_availability']) +_CONSTRAINT.fields_by_name['sla_availability'].containing_oneof = _CONSTRAINT.oneofs_by_name['constraint'] _TERAFLOWCONTROLLER.fields_by_name['context_id'].message_type = _CONTEXTID _AUTHENTICATIONRESULT.fields_by_name['context_id'].message_type = _CONTEXTID DESCRIPTOR.message_types_by_name['Empty'] = _EMPTY @@ -2276,13 +2983,27 @@ DESCRIPTOR.message_types_by_name['SliceIdList'] = _SLICEIDLIST DESCRIPTOR.message_types_by_name['SliceList'] = _SLICELIST DESCRIPTOR.message_types_by_name['SliceEvent'] = _SLICEEVENT DESCRIPTOR.message_types_by_name['ConnectionId'] = _CONNECTIONID +DESCRIPTOR.message_types_by_name['ConnectionSettings_L0'] = _CONNECTIONSETTINGS_L0 +DESCRIPTOR.message_types_by_name['ConnectionSettings_L2'] = _CONNECTIONSETTINGS_L2 +DESCRIPTOR.message_types_by_name['ConnectionSettings_L3'] = _CONNECTIONSETTINGS_L3 +DESCRIPTOR.message_types_by_name['ConnectionSettings_L4'] = _CONNECTIONSETTINGS_L4 +DESCRIPTOR.message_types_by_name['ConnectionSettings'] = _CONNECTIONSETTINGS DESCRIPTOR.message_types_by_name['Connection'] = _CONNECTION DESCRIPTOR.message_types_by_name['ConnectionIdList'] = _CONNECTIONIDLIST DESCRIPTOR.message_types_by_name['ConnectionList'] = _CONNECTIONLIST DESCRIPTOR.message_types_by_name['ConnectionEvent'] = _CONNECTIONEVENT DESCRIPTOR.message_types_by_name['EndPointId'] = _ENDPOINTID DESCRIPTOR.message_types_by_name['EndPoint'] = _ENDPOINT +DESCRIPTOR.message_types_by_name['ConfigRule_Custom'] = _CONFIGRULE_CUSTOM +DESCRIPTOR.message_types_by_name['ConfigRule_ACL'] = _CONFIGRULE_ACL DESCRIPTOR.message_types_by_name['ConfigRule'] = _CONFIGRULE +DESCRIPTOR.message_types_by_name['Constraint_Custom'] = _CONSTRAINT_CUSTOM +DESCRIPTOR.message_types_by_name['Constraint_Schedule'] = _CONSTRAINT_SCHEDULE +DESCRIPTOR.message_types_by_name['GPS_Position'] = _GPS_POSITION +DESCRIPTOR.message_types_by_name['Constraint_EndPointLocation'] = _CONSTRAINT_ENDPOINTLOCATION +DESCRIPTOR.message_types_by_name['Constraint_SLA_Latency'] = _CONSTRAINT_SLA_LATENCY +DESCRIPTOR.message_types_by_name['Constraint_SLA_Capacity'] = _CONSTRAINT_SLA_CAPACITY +DESCRIPTOR.message_types_by_name['Constraint_SLA_Availability'] = _CONSTRAINT_SLA_AVAILABILITY DESCRIPTOR.message_types_by_name['Constraint'] = _CONSTRAINT DESCRIPTOR.message_types_by_name['TeraFlowController'] = _TERAFLOWCONTROLLER DESCRIPTOR.message_types_by_name['AuthenticationResult'] = _AUTHENTICATIONRESULT @@ -2561,6 +3282,41 @@ ConnectionId = _reflection.GeneratedProtocolMessageType('ConnectionId', (_messag }) _sym_db.RegisterMessage(ConnectionId) +ConnectionSettings_L0 = _reflection.GeneratedProtocolMessageType('ConnectionSettings_L0', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONSETTINGS_L0, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionSettings_L0) + }) +_sym_db.RegisterMessage(ConnectionSettings_L0) + +ConnectionSettings_L2 = _reflection.GeneratedProtocolMessageType('ConnectionSettings_L2', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONSETTINGS_L2, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionSettings_L2) + }) +_sym_db.RegisterMessage(ConnectionSettings_L2) + +ConnectionSettings_L3 = _reflection.GeneratedProtocolMessageType('ConnectionSettings_L3', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONSETTINGS_L3, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionSettings_L3) + }) +_sym_db.RegisterMessage(ConnectionSettings_L3) + +ConnectionSettings_L4 = _reflection.GeneratedProtocolMessageType('ConnectionSettings_L4', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONSETTINGS_L4, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionSettings_L4) + }) +_sym_db.RegisterMessage(ConnectionSettings_L4) + +ConnectionSettings = _reflection.GeneratedProtocolMessageType('ConnectionSettings', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONSETTINGS, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionSettings) + }) +_sym_db.RegisterMessage(ConnectionSettings) + Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), { 'DESCRIPTOR' : _CONNECTION, '__module__' : 'context_pb2' @@ -2603,6 +3359,20 @@ EndPoint = _reflection.GeneratedProtocolMessageType('EndPoint', (_message.Messag }) _sym_db.RegisterMessage(EndPoint) +ConfigRule_Custom = _reflection.GeneratedProtocolMessageType('ConfigRule_Custom', (_message.Message,), { + 'DESCRIPTOR' : _CONFIGRULE_CUSTOM, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConfigRule_Custom) + }) +_sym_db.RegisterMessage(ConfigRule_Custom) + +ConfigRule_ACL = _reflection.GeneratedProtocolMessageType('ConfigRule_ACL', (_message.Message,), { + 'DESCRIPTOR' : _CONFIGRULE_ACL, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConfigRule_ACL) + }) +_sym_db.RegisterMessage(ConfigRule_ACL) + ConfigRule = _reflection.GeneratedProtocolMessageType('ConfigRule', (_message.Message,), { 'DESCRIPTOR' : _CONFIGRULE, '__module__' : 'context_pb2' @@ -2610,6 +3380,55 @@ ConfigRule = _reflection.GeneratedProtocolMessageType('ConfigRule', (_message.Me }) _sym_db.RegisterMessage(ConfigRule) +Constraint_Custom = _reflection.GeneratedProtocolMessageType('Constraint_Custom', (_message.Message,), { + 'DESCRIPTOR' : _CONSTRAINT_CUSTOM, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Constraint_Custom) + }) +_sym_db.RegisterMessage(Constraint_Custom) + +Constraint_Schedule = _reflection.GeneratedProtocolMessageType('Constraint_Schedule', (_message.Message,), { + 'DESCRIPTOR' : _CONSTRAINT_SCHEDULE, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Constraint_Schedule) + }) +_sym_db.RegisterMessage(Constraint_Schedule) + +GPS_Position = _reflection.GeneratedProtocolMessageType('GPS_Position', (_message.Message,), { + 'DESCRIPTOR' : _GPS_POSITION, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.GPS_Position) + }) +_sym_db.RegisterMessage(GPS_Position) + +Constraint_EndPointLocation = _reflection.GeneratedProtocolMessageType('Constraint_EndPointLocation', (_message.Message,), { + 'DESCRIPTOR' : _CONSTRAINT_ENDPOINTLOCATION, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Constraint_EndPointLocation) + }) +_sym_db.RegisterMessage(Constraint_EndPointLocation) + +Constraint_SLA_Latency = _reflection.GeneratedProtocolMessageType('Constraint_SLA_Latency', (_message.Message,), { + 'DESCRIPTOR' : _CONSTRAINT_SLA_LATENCY, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Constraint_SLA_Latency) + }) +_sym_db.RegisterMessage(Constraint_SLA_Latency) + +Constraint_SLA_Capacity = _reflection.GeneratedProtocolMessageType('Constraint_SLA_Capacity', (_message.Message,), { + 'DESCRIPTOR' : _CONSTRAINT_SLA_CAPACITY, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Constraint_SLA_Capacity) + }) +_sym_db.RegisterMessage(Constraint_SLA_Capacity) + +Constraint_SLA_Availability = _reflection.GeneratedProtocolMessageType('Constraint_SLA_Availability', (_message.Message,), { + 'DESCRIPTOR' : _CONSTRAINT_SLA_AVAILABILITY, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Constraint_SLA_Availability) + }) +_sym_db.RegisterMessage(Constraint_SLA_Availability) + Constraint = _reflection.GeneratedProtocolMessageType('Constraint', (_message.Message,), { 'DESCRIPTOR' : _CONSTRAINT, '__module__' : 'context_pb2' @@ -2640,8 +3459,8 @@ _CONTEXTSERVICE = _descriptor.ServiceDescriptor( index=0, serialized_options=None, create_key=_descriptor._internal_create_key, - serialized_start=5273, - serialized_end=7688, + serialized_start=7005, + serialized_end=9420, methods=[ _descriptor.MethodDescriptor( name='ListContextIds', diff --git a/src/context/proto/context_policy_pb2.py b/src/context/proto/context_policy_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..2e9d6d15fd1b47e02b580f9e17247ed1a8a87616 --- /dev/null +++ b/src/context/proto/context_policy_pb2.py @@ -0,0 +1,99 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: context-policy.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import context_pb2 as context__pb2 +from . import policy_pb2 as policy__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='context-policy.proto', + package='context_policy', + syntax='proto3', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\x14\x63ontext-policy.proto\x12\x0e\x63ontext_policy\x1a\rcontext.proto\x1a\x0cpolicy.proto2\xca\x02\n\x14\x43ontextPolicyService\x12?\n\x11ListPolicyRuleIds\x12\x0e.context.Empty\x1a\x18.policy.PolicyRuleIdList\"\x00\x12;\n\x0fListPolicyRules\x12\x0e.context.Empty\x1a\x16.policy.PolicyRuleList\"\x00\x12;\n\rGetPolicyRule\x12\x14.policy.PolicyRuleId\x1a\x12.policy.PolicyRule\"\x00\x12;\n\rSetPolicyRule\x12\x12.policy.PolicyRule\x1a\x14.policy.PolicyRuleId\"\x00\x12:\n\x10RemovePolicyRule\x12\x14.policy.PolicyRuleId\x1a\x0e.context.Empty\"\x00\x62\x06proto3' + , + dependencies=[context__pb2.DESCRIPTOR,policy__pb2.DESCRIPTOR,]) + + + +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + + + +_CONTEXTPOLICYSERVICE = _descriptor.ServiceDescriptor( + name='ContextPolicyService', + full_name='context_policy.ContextPolicyService', + file=DESCRIPTOR, + index=0, + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_start=70, + serialized_end=400, + methods=[ + _descriptor.MethodDescriptor( + name='ListPolicyRuleIds', + full_name='context_policy.ContextPolicyService.ListPolicyRuleIds', + index=0, + containing_service=None, + input_type=context__pb2._EMPTY, + output_type=policy__pb2._POLICYRULEIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListPolicyRules', + full_name='context_policy.ContextPolicyService.ListPolicyRules', + index=1, + containing_service=None, + input_type=context__pb2._EMPTY, + output_type=policy__pb2._POLICYRULELIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetPolicyRule', + full_name='context_policy.ContextPolicyService.GetPolicyRule', + index=2, + containing_service=None, + input_type=policy__pb2._POLICYRULEID, + output_type=policy__pb2._POLICYRULE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetPolicyRule', + full_name='context_policy.ContextPolicyService.SetPolicyRule', + index=3, + containing_service=None, + input_type=policy__pb2._POLICYRULE, + output_type=policy__pb2._POLICYRULEID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemovePolicyRule', + full_name='context_policy.ContextPolicyService.RemovePolicyRule', + index=4, + containing_service=None, + input_type=policy__pb2._POLICYRULEID, + output_type=context__pb2._EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), +]) +_sym_db.RegisterServiceDescriptor(_CONTEXTPOLICYSERVICE) + +DESCRIPTOR.services_by_name['ContextPolicyService'] = _CONTEXTPOLICYSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/src/context/proto/context_policy_pb2_grpc.py b/src/context/proto/context_policy_pb2_grpc.py new file mode 100644 index 0000000000000000000000000000000000000000..7a9a1356170949a4c0cd7220956e68b2f57b33fb --- /dev/null +++ b/src/context/proto/context_policy_pb2_grpc.py @@ -0,0 +1,199 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from . import context_pb2 as context__pb2 +from . import policy_pb2 as policy__pb2 + + +class ContextPolicyServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.ListPolicyRuleIds = channel.unary_unary( + '/context_policy.ContextPolicyService/ListPolicyRuleIds', + request_serializer=context__pb2.Empty.SerializeToString, + response_deserializer=policy__pb2.PolicyRuleIdList.FromString, + ) + self.ListPolicyRules = channel.unary_unary( + '/context_policy.ContextPolicyService/ListPolicyRules', + request_serializer=context__pb2.Empty.SerializeToString, + response_deserializer=policy__pb2.PolicyRuleList.FromString, + ) + self.GetPolicyRule = channel.unary_unary( + '/context_policy.ContextPolicyService/GetPolicyRule', + request_serializer=policy__pb2.PolicyRuleId.SerializeToString, + response_deserializer=policy__pb2.PolicyRule.FromString, + ) + self.SetPolicyRule = channel.unary_unary( + '/context_policy.ContextPolicyService/SetPolicyRule', + request_serializer=policy__pb2.PolicyRule.SerializeToString, + response_deserializer=policy__pb2.PolicyRuleId.FromString, + ) + self.RemovePolicyRule = channel.unary_unary( + '/context_policy.ContextPolicyService/RemovePolicyRule', + request_serializer=policy__pb2.PolicyRuleId.SerializeToString, + response_deserializer=context__pb2.Empty.FromString, + ) + + +class ContextPolicyServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def ListPolicyRuleIds(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def ListPolicyRules(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetPolicyRule(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetPolicyRule(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def RemovePolicyRule(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_ContextPolicyServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'ListPolicyRuleIds': grpc.unary_unary_rpc_method_handler( + servicer.ListPolicyRuleIds, + request_deserializer=context__pb2.Empty.FromString, + response_serializer=policy__pb2.PolicyRuleIdList.SerializeToString, + ), + 'ListPolicyRules': grpc.unary_unary_rpc_method_handler( + servicer.ListPolicyRules, + request_deserializer=context__pb2.Empty.FromString, + response_serializer=policy__pb2.PolicyRuleList.SerializeToString, + ), + 'GetPolicyRule': grpc.unary_unary_rpc_method_handler( + servicer.GetPolicyRule, + request_deserializer=policy__pb2.PolicyRuleId.FromString, + response_serializer=policy__pb2.PolicyRule.SerializeToString, + ), + 'SetPolicyRule': grpc.unary_unary_rpc_method_handler( + servicer.SetPolicyRule, + request_deserializer=policy__pb2.PolicyRule.FromString, + response_serializer=policy__pb2.PolicyRuleId.SerializeToString, + ), + 'RemovePolicyRule': grpc.unary_unary_rpc_method_handler( + servicer.RemovePolicyRule, + request_deserializer=policy__pb2.PolicyRuleId.FromString, + response_serializer=context__pb2.Empty.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'context_policy.ContextPolicyService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class ContextPolicyService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def ListPolicyRuleIds(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/context_policy.ContextPolicyService/ListPolicyRuleIds', + context__pb2.Empty.SerializeToString, + policy__pb2.PolicyRuleIdList.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def ListPolicyRules(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/context_policy.ContextPolicyService/ListPolicyRules', + context__pb2.Empty.SerializeToString, + policy__pb2.PolicyRuleList.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetPolicyRule(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/context_policy.ContextPolicyService/GetPolicyRule', + policy__pb2.PolicyRuleId.SerializeToString, + policy__pb2.PolicyRule.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetPolicyRule(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/context_policy.ContextPolicyService/SetPolicyRule', + policy__pb2.PolicyRule.SerializeToString, + policy__pb2.PolicyRuleId.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def RemovePolicyRule(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/context_policy.ContextPolicyService/RemovePolicyRule', + policy__pb2.PolicyRuleId.SerializeToString, + context__pb2.Empty.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/context/proto/policy_pb2.py b/src/context/proto/policy_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..7645a4c0931d8ea66fe03ecd89bec64e98622fed --- /dev/null +++ b/src/context/proto/policy_pb2.py @@ -0,0 +1,492 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: policy.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import context_pb2 as context__pb2 +from . import policy_condition_pb2 as policy__condition__pb2 +from . import policy_action_pb2 as policy__action__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='policy.proto', + package='policy', + syntax='proto3', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\x0cpolicy.proto\x12\x06policy\x1a\rcontext.proto\x1a\x16policy-condition.proto\x1a\x13policy-action.proto\"+\n\x0cPolicyRuleId\x12\x1b\n\x04uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"b\n\x0fPolicyRuleState\x12#\n\x0cpolicyRuleId\x18\x01 \x01(\x0b\x32\r.context.Uuid\x12*\n\x0fpolicyRuleState\x18\x02 \x01(\x0e\x32\x11.policy.RuleState\"0\n\x0fPolicyRuleEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\"\x84\x03\n\nPolicyRule\x12*\n\x0cpolicyRuleId\x18\x01 \x01(\x0b\x32\x14.policy.PolicyRuleId\x12.\n\x0epolicyRuleType\x18\x02 \x01(\x0e\x32\x16.policy.PolicyRuleType\x12\x10\n\x08priority\x18\x03 \x01(\r\x12&\n\x05\x65vent\x18\x04 \x01(\x0b\x32\x17.policy.PolicyRuleEvent\x12\x32\n\rconditionList\x18\x05 \x03(\x0b\x32\x1b.policy.PolicyRuleCondition\x12\x30\n\x0f\x62ooleanOperator\x18\x06 \x01(\x0e\x32\x17.policy.BooleanOperator\x12,\n\nactionList\x18\x07 \x03(\x0b\x32\x18.policy.PolicyRuleAction\x12%\n\tserviceId\x18\x08 \x01(\x0b\x32\x12.context.ServiceId\x12%\n\ndeviceList\x18\t \x03(\x0b\x32\x11.context.DeviceId\"<\n\x0ePolicyRuleList\x12*\n\x0epolicyRuleList\x18\x01 \x03(\x0b\x32\x12.policy.PolicyRule\"?\n\x10PolicyRuleIdList\x12+\n\rpolicyRuleIds\x18\x01 \x03(\x0b\x32\x14.policy.PolicyRuleId*G\n\tRuleState\x12\x13\n\x0fPOLICY_INACTIVE\x10\x00\x12\x12\n\x0ePOLICY_PLANNED\x10\x01\x12\x11\n\rPOLICY_ACTIVE\x10\x02*?\n\x0ePolicyRuleType\x12\x15\n\x11POLICYTYPE_DEVICE\x10\x00\x12\x16\n\x12POLICYTYPE_NETWORK\x10\x01\x32\x8c\x03\n\rPolicyService\x12:\n\tPolicyAdd\x12\x12.policy.PolicyRule\x1a\x17.policy.PolicyRuleState\"\x00\x12=\n\x0cPolicyUpdate\x12\x12.policy.PolicyRule\x1a\x17.policy.PolicyRuleState\"\x00\x12=\n\x0cPolicyDelete\x12\x12.policy.PolicyRule\x1a\x17.policy.PolicyRuleState\"\x00\x12\x37\n\tGetPolicy\x12\x14.policy.PolicyRuleId\x1a\x12.policy.PolicyRule\"\x00\x12\x42\n\x13GetPolicyByDeviceId\x12\x11.context.DeviceId\x1a\x16.policy.PolicyRuleList\"\x00\x12\x44\n\x14GetPolicyByServiceId\x12\x12.context.ServiceId\x1a\x16.policy.PolicyRuleList\"\x00\x62\x06proto3' + , + dependencies=[context__pb2.DESCRIPTOR,policy__condition__pb2.DESCRIPTOR,policy__action__pb2.DESCRIPTOR,]) + +_RULESTATE = _descriptor.EnumDescriptor( + name='RuleState', + full_name='policy.RuleState', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='POLICY_INACTIVE', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='POLICY_PLANNED', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='POLICY_ACTIVE', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=797, + serialized_end=868, +) +_sym_db.RegisterEnumDescriptor(_RULESTATE) + +RuleState = enum_type_wrapper.EnumTypeWrapper(_RULESTATE) +_POLICYRULETYPE = _descriptor.EnumDescriptor( + name='PolicyRuleType', + full_name='policy.PolicyRuleType', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='POLICYTYPE_DEVICE', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='POLICYTYPE_NETWORK', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=870, + serialized_end=933, +) +_sym_db.RegisterEnumDescriptor(_POLICYRULETYPE) + +PolicyRuleType = enum_type_wrapper.EnumTypeWrapper(_POLICYRULETYPE) +POLICY_INACTIVE = 0 +POLICY_PLANNED = 1 +POLICY_ACTIVE = 2 +POLICYTYPE_DEVICE = 0 +POLICYTYPE_NETWORK = 1 + + + +_POLICYRULEID = _descriptor.Descriptor( + name='PolicyRuleId', + full_name='policy.PolicyRuleId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='policy.PolicyRuleId.uuid', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=84, + serialized_end=127, +) + + +_POLICYRULESTATE = _descriptor.Descriptor( + name='PolicyRuleState', + full_name='policy.PolicyRuleState', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='policyRuleId', full_name='policy.PolicyRuleState.policyRuleId', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='policyRuleState', full_name='policy.PolicyRuleState.policyRuleState', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=129, + serialized_end=227, +) + + +_POLICYRULEEVENT = _descriptor.Descriptor( + name='PolicyRuleEvent', + full_name='policy.PolicyRuleEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='policy.PolicyRuleEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=229, + serialized_end=277, +) + + +_POLICYRULE = _descriptor.Descriptor( + name='PolicyRule', + full_name='policy.PolicyRule', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='policyRuleId', full_name='policy.PolicyRule.policyRuleId', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='policyRuleType', full_name='policy.PolicyRule.policyRuleType', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='priority', full_name='policy.PolicyRule.priority', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='event', full_name='policy.PolicyRule.event', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='conditionList', full_name='policy.PolicyRule.conditionList', index=4, + number=5, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='booleanOperator', full_name='policy.PolicyRule.booleanOperator', index=5, + number=6, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='actionList', full_name='policy.PolicyRule.actionList', index=6, + number=7, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='serviceId', full_name='policy.PolicyRule.serviceId', index=7, + number=8, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='deviceList', full_name='policy.PolicyRule.deviceList', index=8, + number=9, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=280, + serialized_end=668, +) + + +_POLICYRULELIST = _descriptor.Descriptor( + name='PolicyRuleList', + full_name='policy.PolicyRuleList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='policyRuleList', full_name='policy.PolicyRuleList.policyRuleList', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=670, + serialized_end=730, +) + + +_POLICYRULEIDLIST = _descriptor.Descriptor( + name='PolicyRuleIdList', + full_name='policy.PolicyRuleIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='policyRuleIds', full_name='policy.PolicyRuleIdList.policyRuleIds', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=732, + serialized_end=795, +) + +_POLICYRULEID.fields_by_name['uuid'].message_type = context__pb2._UUID +_POLICYRULESTATE.fields_by_name['policyRuleId'].message_type = context__pb2._UUID +_POLICYRULESTATE.fields_by_name['policyRuleState'].enum_type = _RULESTATE +_POLICYRULEEVENT.fields_by_name['event'].message_type = context__pb2._EVENT +_POLICYRULE.fields_by_name['policyRuleId'].message_type = _POLICYRULEID +_POLICYRULE.fields_by_name['policyRuleType'].enum_type = _POLICYRULETYPE +_POLICYRULE.fields_by_name['event'].message_type = _POLICYRULEEVENT +_POLICYRULE.fields_by_name['conditionList'].message_type = policy__condition__pb2._POLICYRULECONDITION +_POLICYRULE.fields_by_name['booleanOperator'].enum_type = policy__condition__pb2._BOOLEANOPERATOR +_POLICYRULE.fields_by_name['actionList'].message_type = policy__action__pb2._POLICYRULEACTION +_POLICYRULE.fields_by_name['serviceId'].message_type = context__pb2._SERVICEID +_POLICYRULE.fields_by_name['deviceList'].message_type = context__pb2._DEVICEID +_POLICYRULELIST.fields_by_name['policyRuleList'].message_type = _POLICYRULE +_POLICYRULEIDLIST.fields_by_name['policyRuleIds'].message_type = _POLICYRULEID +DESCRIPTOR.message_types_by_name['PolicyRuleId'] = _POLICYRULEID +DESCRIPTOR.message_types_by_name['PolicyRuleState'] = _POLICYRULESTATE +DESCRIPTOR.message_types_by_name['PolicyRuleEvent'] = _POLICYRULEEVENT +DESCRIPTOR.message_types_by_name['PolicyRule'] = _POLICYRULE +DESCRIPTOR.message_types_by_name['PolicyRuleList'] = _POLICYRULELIST +DESCRIPTOR.message_types_by_name['PolicyRuleIdList'] = _POLICYRULEIDLIST +DESCRIPTOR.enum_types_by_name['RuleState'] = _RULESTATE +DESCRIPTOR.enum_types_by_name['PolicyRuleType'] = _POLICYRULETYPE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +PolicyRuleId = _reflection.GeneratedProtocolMessageType('PolicyRuleId', (_message.Message,), { + 'DESCRIPTOR' : _POLICYRULEID, + '__module__' : 'policy_pb2' + # @@protoc_insertion_point(class_scope:policy.PolicyRuleId) + }) +_sym_db.RegisterMessage(PolicyRuleId) + +PolicyRuleState = _reflection.GeneratedProtocolMessageType('PolicyRuleState', (_message.Message,), { + 'DESCRIPTOR' : _POLICYRULESTATE, + '__module__' : 'policy_pb2' + # @@protoc_insertion_point(class_scope:policy.PolicyRuleState) + }) +_sym_db.RegisterMessage(PolicyRuleState) + +PolicyRuleEvent = _reflection.GeneratedProtocolMessageType('PolicyRuleEvent', (_message.Message,), { + 'DESCRIPTOR' : _POLICYRULEEVENT, + '__module__' : 'policy_pb2' + # @@protoc_insertion_point(class_scope:policy.PolicyRuleEvent) + }) +_sym_db.RegisterMessage(PolicyRuleEvent) + +PolicyRule = _reflection.GeneratedProtocolMessageType('PolicyRule', (_message.Message,), { + 'DESCRIPTOR' : _POLICYRULE, + '__module__' : 'policy_pb2' + # @@protoc_insertion_point(class_scope:policy.PolicyRule) + }) +_sym_db.RegisterMessage(PolicyRule) + +PolicyRuleList = _reflection.GeneratedProtocolMessageType('PolicyRuleList', (_message.Message,), { + 'DESCRIPTOR' : _POLICYRULELIST, + '__module__' : 'policy_pb2' + # @@protoc_insertion_point(class_scope:policy.PolicyRuleList) + }) +_sym_db.RegisterMessage(PolicyRuleList) + +PolicyRuleIdList = _reflection.GeneratedProtocolMessageType('PolicyRuleIdList', (_message.Message,), { + 'DESCRIPTOR' : _POLICYRULEIDLIST, + '__module__' : 'policy_pb2' + # @@protoc_insertion_point(class_scope:policy.PolicyRuleIdList) + }) +_sym_db.RegisterMessage(PolicyRuleIdList) + + + +_POLICYSERVICE = _descriptor.ServiceDescriptor( + name='PolicyService', + full_name='policy.PolicyService', + file=DESCRIPTOR, + index=0, + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_start=936, + serialized_end=1332, + methods=[ + _descriptor.MethodDescriptor( + name='PolicyAdd', + full_name='policy.PolicyService.PolicyAdd', + index=0, + containing_service=None, + input_type=_POLICYRULE, + output_type=_POLICYRULESTATE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='PolicyUpdate', + full_name='policy.PolicyService.PolicyUpdate', + index=1, + containing_service=None, + input_type=_POLICYRULE, + output_type=_POLICYRULESTATE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='PolicyDelete', + full_name='policy.PolicyService.PolicyDelete', + index=2, + containing_service=None, + input_type=_POLICYRULE, + output_type=_POLICYRULESTATE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetPolicy', + full_name='policy.PolicyService.GetPolicy', + index=3, + containing_service=None, + input_type=_POLICYRULEID, + output_type=_POLICYRULE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetPolicyByDeviceId', + full_name='policy.PolicyService.GetPolicyByDeviceId', + index=4, + containing_service=None, + input_type=context__pb2._DEVICEID, + output_type=_POLICYRULELIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetPolicyByServiceId', + full_name='policy.PolicyService.GetPolicyByServiceId', + index=5, + containing_service=None, + input_type=context__pb2._SERVICEID, + output_type=_POLICYRULELIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), +]) +_sym_db.RegisterServiceDescriptor(_POLICYSERVICE) + +DESCRIPTOR.services_by_name['PolicyService'] = _POLICYSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/src/device/service/drivers/openconfig/OpenConfigDriver.py b/src/device/service/drivers/openconfig/OpenConfigDriver.py index b282178989fa3f357a77fd6a1aa8fb6900fd430d..dd41096ec25fb74f1b1b855c98f90e09fee33194 100644 --- a/src/device/service/drivers/openconfig/OpenConfigDriver.py +++ b/src/device/service/drivers/openconfig/OpenConfigDriver.py @@ -30,7 +30,6 @@ from device.service.driver_api.AnyTreeTools import TreeNode, get_subnode, set_su from .templates import ALL_RESOURCE_KEYS, EMPTY_CONFIG, compose_config, get_filter, parse from .RetryDecorator import retry - DEBUG_MODE = False logging.getLogger('ncclient.manager').setLevel(logging.DEBUG if DEBUG_MODE else logging.WARNING) logging.getLogger('ncclient.transport.ssh').setLevel(logging.DEBUG if DEBUG_MODE else logging.WARNING) diff --git a/src/pathcomp/.gitlab-ci.yml b/src/pathcomp/.gitlab-ci.yml new file mode 100644 index 0000000000000000000000000000000000000000..56674d223afdc12a830a4542d92ee730e2bb971b --- /dev/null +++ b/src/pathcomp/.gitlab-ci.yml @@ -0,0 +1,102 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +# Build, tag and push the Docker image to the GitLab registry +build pathcomp: + variables: + IMAGE_NAME: 'pathcomp' # name of the microservice + IMAGE_TAG: 'latest' # tag of the container image (production, development, etc) + stage: build + before_script: + - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + script: + - docker build -t "$IMAGE_NAME:$IMAGE_TAG" -f ./src/$IMAGE_NAME/Dockerfile ./src/ + - docker tag "$IMAGE_NAME:$IMAGE_TAG" "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" + - docker push "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" + after_script: + - docker images --filter="dangling=true" --quiet | xargs -r docker rmi + rules: + - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' + - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' + - changes: + - src/$IMAGE_NAME/**/*.{py,in,yml} + - src/$IMAGE_NAME/Dockerfile + - src/$IMAGE_NAME/tests/*.py + - manifests/${IMAGE_NAME}service.yaml + - .gitlab-ci.yml + +# Apply unit test to the component +unit test pathcomp: + variables: + IMAGE_NAME: 'pathcomp' # name of the microservice + IMAGE_TAG: 'latest' # tag of the container image (production, development, etc) + stage: unit_test + needs: + - build pathcomp + before_script: + - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + - if docker network list | grep teraflowbridge; then echo "teraflowbridge is already created"; else docker network create -d bridge teraflowbridge; fi + - if docker container ls | grep $IMAGE_NAME; then docker rm -f $IMAGE_NAME; else echo "$IMAGE_NAME image is not in the system"; fi + script: + - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" + - docker run --name $IMAGE_NAME -d -p 3030:3030 -v "$PWD/src/$IMAGE_NAME/tests:/opt/results" --network=teraflowbridge $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG + - sleep 5 + - docker ps -a + - docker logs $IMAGE_NAME + - docker exec -i $IMAGE_NAME bash -c "coverage run -m pytest --log-level=INFO --verbose $IMAGE_NAME/tests/test_unitary.py --junitxml=/opt/results/${IMAGE_NAME}_report.xml" + - docker exec -i $IMAGE_NAME bash -c "coverage report --include='${IMAGE_NAME}/*' --show-missing" + coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/' + after_script: + - docker rm -f $IMAGE_NAME + - docker network rm teraflowbridge + rules: + - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' + - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' + - changes: + - src/$IMAGE_NAME/**/*.{py,in,yml} + - src/$IMAGE_NAME/Dockerfile + - src/$IMAGE_NAME/tests/*.py + - src/$IMAGE_NAME/tests/Dockerfile + - manifests/${IMAGE_NAME}service.yaml + - .gitlab-ci.yml + artifacts: + when: always + reports: + junit: src/$IMAGE_NAME/tests/${IMAGE_NAME}_report.xml + +# Deployment of the service in Kubernetes Cluster +deploy pathcomp: + variables: + IMAGE_NAME: 'pathcomp' # name of the microservice + IMAGE_TAG: 'latest' # tag of the container image (production, development, etc) + stage: deploy + needs: + - unit test pathcomp + # - integ_test execute + script: + - 'sed -i "s/$IMAGE_NAME:.*/$IMAGE_NAME:$IMAGE_TAG/" manifests/${IMAGE_NAME}service.yaml' + - kubectl version + - kubectl get all + - kubectl apply -f "manifests/${IMAGE_NAME}service.yaml" + - kubectl get all + # environment: + # name: test + # url: https://example.com + # kubernetes: + # namespace: test + rules: + - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' + when: manual + - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' + when: manual diff --git a/src/pathcomp/Config.py b/src/pathcomp/Config.py new file mode 100644 index 0000000000000000000000000000000000000000..70a33251242c51f49140e596b8208a19dd5245f7 --- /dev/null +++ b/src/pathcomp/Config.py @@ -0,0 +1,14 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + diff --git a/src/pathcomp/Dockerfile b/src/pathcomp/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..806d97bac6ae5439349506d2b8798111c43d0c0a --- /dev/null +++ b/src/pathcomp/Dockerfile @@ -0,0 +1,50 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +FROM python:3-slim + +# Install dependencies +RUN apt-get --yes --quiet --quiet update && \ + apt-get --yes --quiet --quiet install wget g++ && \ + rm -rf /var/lib/apt/lists/* + +# Set Python to show logs as they occur +ENV PYTHONUNBUFFERED=0 + +# Download the gRPC health probe +RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && \ + wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && \ + chmod +x /bin/grpc_health_probe + +# Get generic Python packages +RUN python3 -m pip install --upgrade pip setuptools wheel pip-tools + +# Set working directory +WORKDIR /var/teraflow + +# Create module sub-folders +RUN mkdir -p /var/teraflow/pathcomp + +# Get Python packages per module +COPY pathcomp/requirements.in pathcomp/requirements.in +RUN pip-compile --output-file=pathcomp/requirements.txt pathcomp/requirements.in +RUN python3 -m pip install -r pathcomp/requirements.txt + +# Add files into working directory +COPY common/. common +COPY context/. context +COPY pathcomp/. pathcomp + +# Start service service +ENTRYPOINT ["python", "-m", "pathcomp.service"] diff --git a/src/pathcomp/__init__.py b/src/pathcomp/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..70a33251242c51f49140e596b8208a19dd5245f7 --- /dev/null +++ b/src/pathcomp/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + diff --git a/src/pathcomp/client/PathCompClient.py b/src/pathcomp/client/PathCompClient.py new file mode 100644 index 0000000000000000000000000000000000000000..b872ba1846ed7b1798ffbbb0d0be81fd73df2368 --- /dev/null +++ b/src/pathcomp/client/PathCompClient.py @@ -0,0 +1,53 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +import grpc, logging +from common.Constants import ServiceNameEnum +from common.Settings import get_service_host, get_service_port_grpc +from common.tools.client.RetryDecorator import retry, delay_exponential +from common.tools.grpc.Tools import grpc_message_to_json_string +from pathcomp.proto.pathcomp_pb2 import PathCompReply, PathCompRequest +from pathcomp.proto.pathcomp_pb2_grpc import PathCompServiceStub + +LOGGER = logging.getLogger(__name__) +MAX_RETRIES = 15 +DELAY_FUNCTION = delay_exponential(initial=0.01, increment=2.0, maximum=5.0) +RETRY_DECORATOR = retry(max_retries=MAX_RETRIES, delay_function=DELAY_FUNCTION, prepare_method_name='connect') + +class PathCompClient: + def __init__(self, host=None, port=None): + if not host: host = get_service_host(ServiceNameEnum.PATHCOMP) + if not port: port = get_service_port_grpc(ServiceNameEnum.PATHCOMP) + self.endpoint = '{:s}:{:s}'.format(str(host), str(port)) + LOGGER.debug('Creating channel to {:s}...'.format(str(self.endpoint))) + self.channel = None + self.stub = None + self.connect() + LOGGER.debug('Channel created') + + def connect(self): + self.channel = grpc.insecure_channel(self.endpoint) + self.stub = PathCompServiceStub(self.channel) + + def close(self): + if self.channel is not None: self.channel.close() + self.channel = None + self.stub = None + + @RETRY_DECORATOR + def Compute(self, request : PathCompRequest) -> PathCompReply: + LOGGER.debug('Compute request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.Compute(request) + LOGGER.debug('Compute result: {:s}'.format(grpc_message_to_json_string(response))) + return response diff --git a/src/pathcomp/client/__init__.py b/src/pathcomp/client/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..70a33251242c51f49140e596b8208a19dd5245f7 --- /dev/null +++ b/src/pathcomp/client/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + diff --git a/src/pathcomp/genproto.sh b/src/pathcomp/genproto.sh new file mode 100755 index 0000000000000000000000000000000000000000..8c6683626b6da4bb5f6050c0595818a945b2c3ab --- /dev/null +++ b/src/pathcomp/genproto.sh @@ -0,0 +1,49 @@ +#!/bin/bash -eu +# +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +# Make folder containing the script the root folder for its execution +cd $(dirname $0) + +rm -rf proto/*.py +rm -rf proto/__pycache__ +tee proto/__init__.py << EOF > /dev/null +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +EOF + +python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto context.proto +python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto kpi_sample_types.proto +python -m grpc_tools.protoc -I../../proto --python_out=proto --grpc_python_out=proto pathcomp.proto + +rm proto/context_pb2_grpc.py +rm proto/kpi_sample_types_pb2_grpc.py + +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/context_pb2.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/kpi_sample_types_pb2.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/pathcomp_pb2.py +sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' proto/pathcomp_pb2_grpc.py diff --git a/src/pathcomp/proto/__init__.py b/src/pathcomp/proto/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..70a33251242c51f49140e596b8208a19dd5245f7 --- /dev/null +++ b/src/pathcomp/proto/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + diff --git a/src/pathcomp/proto/context_pb2.py b/src/pathcomp/proto/context_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..50d501d3ac053ad644554331af26e3c40cd426a1 --- /dev/null +++ b/src/pathcomp/proto/context_pb2.py @@ -0,0 +1,3071 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: context.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import kpi_sample_types_pb2 as kpi__sample__types__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='context.proto', + package='context', + syntax='proto3', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\rcontext.proto\x12\x07\x63ontext\x1a\x16kpi_sample_types.proto\"\x07\n\x05\x45mpty\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"F\n\x05\x45vent\x12\x11\n\ttimestamp\x18\x01 \x01(\x01\x12*\n\nevent_type\x18\x02 \x01(\x0e\x32\x16.context.EventTypeEnum\"0\n\tContextId\x12#\n\x0c\x63ontext_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\xb6\x01\n\x07\x43ontext\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12)\n\x0ctopology_ids\x18\x02 \x03(\x0b\x32\x13.context.TopologyId\x12\'\n\x0bservice_ids\x18\x03 \x03(\x0b\x32\x12.context.ServiceId\x12/\n\ncontroller\x18\x04 \x01(\x0b\x32\x1b.context.TeraFlowController\"8\n\rContextIdList\x12\'\n\x0b\x63ontext_ids\x18\x01 \x03(\x0b\x32\x12.context.ContextId\"1\n\x0b\x43ontextList\x12\"\n\x08\x63ontexts\x18\x01 \x03(\x0b\x32\x10.context.Context\"U\n\x0c\x43ontextEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12&\n\ncontext_id\x18\x02 \x01(\x0b\x32\x12.context.ContextId\"Z\n\nTopologyId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12$\n\rtopology_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"~\n\x08Topology\x12(\n\x0btopology_id\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12%\n\ndevice_ids\x18\x02 \x03(\x0b\x32\x11.context.DeviceId\x12!\n\x08link_ids\x18\x03 \x03(\x0b\x32\x0f.context.LinkId\";\n\x0eTopologyIdList\x12)\n\x0ctopology_ids\x18\x01 \x03(\x0b\x32\x13.context.TopologyId\"5\n\x0cTopologyList\x12%\n\ntopologies\x18\x01 \x03(\x0b\x32\x11.context.Topology\"X\n\rTopologyEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12(\n\x0btopology_id\x18\x02 \x01(\x0b\x32\x13.context.TopologyId\".\n\x08\x44\x65viceId\x12\"\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\x9a\x02\n\x06\x44\x65vice\x12$\n\tdevice_id\x18\x01 \x01(\x0b\x32\x11.context.DeviceId\x12\x13\n\x0b\x64\x65vice_type\x18\x02 \x01(\t\x12,\n\rdevice_config\x18\x03 \x01(\x0b\x32\x15.context.DeviceConfig\x12G\n\x19\x64\x65vice_operational_status\x18\x04 \x01(\x0e\x32$.context.DeviceOperationalStatusEnum\x12\x31\n\x0e\x64\x65vice_drivers\x18\x05 \x03(\x0e\x32\x19.context.DeviceDriverEnum\x12+\n\x10\x64\x65vice_endpoints\x18\x06 \x03(\x0b\x32\x11.context.EndPoint\"9\n\x0c\x44\x65viceConfig\x12)\n\x0c\x63onfig_rules\x18\x01 \x03(\x0b\x32\x13.context.ConfigRule\"5\n\x0c\x44\x65viceIdList\x12%\n\ndevice_ids\x18\x01 \x03(\x0b\x32\x11.context.DeviceId\".\n\nDeviceList\x12 \n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x0f.context.Device\"R\n\x0b\x44\x65viceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12$\n\tdevice_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\"*\n\x06LinkId\x12 \n\tlink_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"X\n\x04Link\x12 \n\x07link_id\x18\x01 \x01(\x0b\x32\x0f.context.LinkId\x12.\n\x11link_endpoint_ids\x18\x02 \x03(\x0b\x32\x13.context.EndPointId\"/\n\nLinkIdList\x12!\n\x08link_ids\x18\x01 \x03(\x0b\x32\x0f.context.LinkId\"(\n\x08LinkList\x12\x1c\n\x05links\x18\x01 \x03(\x0b\x32\r.context.Link\"L\n\tLinkEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12 \n\x07link_id\x18\x02 \x01(\x0b\x32\x0f.context.LinkId\"X\n\tServiceId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12#\n\x0cservice_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"\xa6\x02\n\x07Service\x12&\n\nservice_id\x18\x01 \x01(\x0b\x32\x12.context.ServiceId\x12.\n\x0cservice_type\x18\x02 \x01(\x0e\x32\x18.context.ServiceTypeEnum\x12\x31\n\x14service_endpoint_ids\x18\x03 \x03(\x0b\x32\x13.context.EndPointId\x12\x30\n\x13service_constraints\x18\x04 \x03(\x0b\x32\x13.context.Constraint\x12.\n\x0eservice_status\x18\x05 \x01(\x0b\x32\x16.context.ServiceStatus\x12.\n\x0eservice_config\x18\x06 \x01(\x0b\x32\x16.context.ServiceConfig\"C\n\rServiceStatus\x12\x32\n\x0eservice_status\x18\x01 \x01(\x0e\x32\x1a.context.ServiceStatusEnum\":\n\rServiceConfig\x12)\n\x0c\x63onfig_rules\x18\x01 \x03(\x0b\x32\x13.context.ConfigRule\"8\n\rServiceIdList\x12\'\n\x0bservice_ids\x18\x01 \x03(\x0b\x32\x12.context.ServiceId\"1\n\x0bServiceList\x12\"\n\x08services\x18\x01 \x03(\x0b\x32\x10.context.Service\"U\n\x0cServiceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12&\n\nservice_id\x18\x02 \x01(\x0b\x32\x12.context.ServiceId\"T\n\x07SliceId\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12!\n\nslice_uuid\x18\x02 \x01(\x0b\x32\r.context.Uuid\"\x95\x02\n\x05Slice\x12\"\n\x08slice_id\x18\x01 \x01(\x0b\x32\x10.context.SliceId\x12/\n\x12slice_endpoint_ids\x18\x02 \x03(\x0b\x32\x13.context.EndPointId\x12.\n\x11slice_constraints\x18\x03 \x03(\x0b\x32\x13.context.Constraint\x12-\n\x11slice_service_ids\x18\x04 \x03(\x0b\x32\x12.context.ServiceId\x12,\n\x12slice_subslice_ids\x18\x05 \x03(\x0b\x32\x10.context.SliceId\x12*\n\x0cslice_status\x18\x06 \x01(\x0b\x32\x14.context.SliceStatus\"=\n\x0bSliceStatus\x12.\n\x0cslice_status\x18\x01 \x01(\x0e\x32\x18.context.SliceStatusEnum\"2\n\x0bSliceIdList\x12#\n\tslice_ids\x18\x01 \x03(\x0b\x32\x10.context.SliceId\"+\n\tSliceList\x12\x1e\n\x06slices\x18\x01 \x03(\x0b\x32\x0e.context.Slice\"O\n\nSliceEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12\"\n\x08slice_id\x18\x02 \x01(\x0b\x32\x10.context.SliceId\"6\n\x0c\x43onnectionId\x12&\n\x0f\x63onnection_uuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\xc4\x01\n\nConnection\x12,\n\rconnection_id\x18\x01 \x01(\x0b\x32\x15.context.ConnectionId\x12&\n\nservice_id\x18\x02 \x01(\x0b\x32\x12.context.ServiceId\x12\x33\n\x16path_hops_endpoint_ids\x18\x03 \x03(\x0b\x32\x13.context.EndPointId\x12+\n\x0fsub_service_ids\x18\x04 \x03(\x0b\x32\x12.context.ServiceId\"A\n\x10\x43onnectionIdList\x12-\n\x0e\x63onnection_ids\x18\x01 \x03(\x0b\x32\x15.context.ConnectionId\":\n\x0e\x43onnectionList\x12(\n\x0b\x63onnections\x18\x01 \x03(\x0b\x32\x13.context.Connection\"^\n\x0f\x43onnectionEvent\x12\x1d\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x0e.context.Event\x12,\n\rconnection_id\x18\x02 \x01(\x0b\x32\x15.context.ConnectionId\"\x82\x01\n\nEndPointId\x12(\n\x0btopology_id\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12$\n\tdevice_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\x12$\n\rendpoint_uuid\x18\x03 \x01(\x0b\x32\r.context.Uuid\"\x86\x01\n\x08\x45ndPoint\x12(\n\x0b\x65ndpoint_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x15\n\rendpoint_type\x18\x02 \x01(\t\x12\x39\n\x10kpi_sample_types\x18\x03 \x03(\x0e\x32\x1f.kpi_sample_types.KpiSampleType\"e\n\nConfigRule\x12)\n\x06\x61\x63tion\x18\x01 \x01(\x0e\x32\x19.context.ConfigActionEnum\x12\x14\n\x0cresource_key\x18\x02 \x01(\t\x12\x16\n\x0eresource_value\x18\x03 \x01(\t\"?\n\nConstraint\x12\x17\n\x0f\x63onstraint_type\x18\x01 \x01(\t\x12\x18\n\x10\x63onstraint_value\x18\x02 \x01(\t\"^\n\x12TeraFlowController\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x12\n\nip_address\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\r\"U\n\x14\x41uthenticationResult\x12&\n\ncontext_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x15\n\rauthenticated\x18\x02 \x01(\x08*j\n\rEventTypeEnum\x12\x17\n\x13\x45VENTTYPE_UNDEFINED\x10\x00\x12\x14\n\x10\x45VENTTYPE_CREATE\x10\x01\x12\x14\n\x10\x45VENTTYPE_UPDATE\x10\x02\x12\x14\n\x10\x45VENTTYPE_REMOVE\x10\x03*\xc5\x01\n\x10\x44\x65viceDriverEnum\x12\x1a\n\x16\x44\x45VICEDRIVER_UNDEFINED\x10\x00\x12\x1b\n\x17\x44\x45VICEDRIVER_OPENCONFIG\x10\x01\x12\x1e\n\x1a\x44\x45VICEDRIVER_TRANSPORT_API\x10\x02\x12\x13\n\x0f\x44\x45VICEDRIVER_P4\x10\x03\x12&\n\"DEVICEDRIVER_IETF_NETWORK_TOPOLOGY\x10\x04\x12\x1b\n\x17\x44\x45VICEDRIVER_ONF_TR_352\x10\x05*\x8f\x01\n\x1b\x44\x65viceOperationalStatusEnum\x12%\n!DEVICEOPERATIONALSTATUS_UNDEFINED\x10\x00\x12$\n DEVICEOPERATIONALSTATUS_DISABLED\x10\x01\x12#\n\x1f\x44\x45VICEOPERATIONALSTATUS_ENABLED\x10\x02*\x81\x01\n\x0fServiceTypeEnum\x12\x17\n\x13SERVICETYPE_UNKNOWN\x10\x00\x12\x14\n\x10SERVICETYPE_L3NM\x10\x01\x12\x14\n\x10SERVICETYPE_L2NM\x10\x02\x12)\n%SERVICETYPE_TAPI_CONNECTIVITY_SERVICE\x10\x03*\x88\x01\n\x11ServiceStatusEnum\x12\x1b\n\x17SERVICESTATUS_UNDEFINED\x10\x00\x12\x19\n\x15SERVICESTATUS_PLANNED\x10\x01\x12\x18\n\x14SERVICESTATUS_ACTIVE\x10\x02\x12!\n\x1dSERVICESTATUS_PENDING_REMOVAL\x10\x03*\x8b\x01\n\x0fSliceStatusEnum\x12\x19\n\x15SLICESTATUS_UNDEFINED\x10\x00\x12\x17\n\x13SLICESTATUS_PLANNED\x10\x01\x12\x14\n\x10SLICESTATUS_INIT\x10\x02\x12\x16\n\x12SLICESTATUS_ACTIVE\x10\x03\x12\x16\n\x12SLICESTATUS_DEINIT\x10\x04*]\n\x10\x43onfigActionEnum\x12\x1a\n\x16\x43ONFIGACTION_UNDEFINED\x10\x00\x12\x14\n\x10\x43ONFIGACTION_SET\x10\x01\x12\x17\n\x13\x43ONFIGACTION_DELETE\x10\x02\x32\xef\x12\n\x0e\x43ontextService\x12:\n\x0eListContextIds\x12\x0e.context.Empty\x1a\x16.context.ContextIdList\"\x00\x12\x36\n\x0cListContexts\x12\x0e.context.Empty\x1a\x14.context.ContextList\"\x00\x12\x34\n\nGetContext\x12\x12.context.ContextId\x1a\x10.context.Context\"\x00\x12\x34\n\nSetContext\x12\x10.context.Context\x1a\x12.context.ContextId\"\x00\x12\x35\n\rRemoveContext\x12\x12.context.ContextId\x1a\x0e.context.Empty\"\x00\x12=\n\x10GetContextEvents\x12\x0e.context.Empty\x1a\x15.context.ContextEvent\"\x00\x30\x01\x12@\n\x0fListTopologyIds\x12\x12.context.ContextId\x1a\x17.context.TopologyIdList\"\x00\x12=\n\x0eListTopologies\x12\x12.context.ContextId\x1a\x15.context.TopologyList\"\x00\x12\x37\n\x0bGetTopology\x12\x13.context.TopologyId\x1a\x11.context.Topology\"\x00\x12\x37\n\x0bSetTopology\x12\x11.context.Topology\x1a\x13.context.TopologyId\"\x00\x12\x37\n\x0eRemoveTopology\x12\x13.context.TopologyId\x1a\x0e.context.Empty\"\x00\x12?\n\x11GetTopologyEvents\x12\x0e.context.Empty\x1a\x16.context.TopologyEvent\"\x00\x30\x01\x12\x38\n\rListDeviceIds\x12\x0e.context.Empty\x1a\x15.context.DeviceIdList\"\x00\x12\x34\n\x0bListDevices\x12\x0e.context.Empty\x1a\x13.context.DeviceList\"\x00\x12\x31\n\tGetDevice\x12\x11.context.DeviceId\x1a\x0f.context.Device\"\x00\x12\x31\n\tSetDevice\x12\x0f.context.Device\x1a\x11.context.DeviceId\"\x00\x12\x33\n\x0cRemoveDevice\x12\x11.context.DeviceId\x1a\x0e.context.Empty\"\x00\x12;\n\x0fGetDeviceEvents\x12\x0e.context.Empty\x1a\x14.context.DeviceEvent\"\x00\x30\x01\x12\x34\n\x0bListLinkIds\x12\x0e.context.Empty\x1a\x13.context.LinkIdList\"\x00\x12\x30\n\tListLinks\x12\x0e.context.Empty\x1a\x11.context.LinkList\"\x00\x12+\n\x07GetLink\x12\x0f.context.LinkId\x1a\r.context.Link\"\x00\x12+\n\x07SetLink\x12\r.context.Link\x1a\x0f.context.LinkId\"\x00\x12/\n\nRemoveLink\x12\x0f.context.LinkId\x1a\x0e.context.Empty\"\x00\x12\x37\n\rGetLinkEvents\x12\x0e.context.Empty\x1a\x12.context.LinkEvent\"\x00\x30\x01\x12>\n\x0eListServiceIds\x12\x12.context.ContextId\x1a\x16.context.ServiceIdList\"\x00\x12:\n\x0cListServices\x12\x12.context.ContextId\x1a\x14.context.ServiceList\"\x00\x12\x34\n\nGetService\x12\x12.context.ServiceId\x1a\x10.context.Service\"\x00\x12\x34\n\nSetService\x12\x10.context.Service\x1a\x12.context.ServiceId\"\x00\x12\x35\n\rRemoveService\x12\x12.context.ServiceId\x1a\x0e.context.Empty\"\x00\x12=\n\x10GetServiceEvents\x12\x0e.context.Empty\x1a\x15.context.ServiceEvent\"\x00\x30\x01\x12:\n\x0cListSliceIds\x12\x12.context.ContextId\x1a\x14.context.SliceIdList\"\x00\x12\x36\n\nListSlices\x12\x12.context.ContextId\x1a\x12.context.SliceList\"\x00\x12.\n\x08GetSlice\x12\x10.context.SliceId\x1a\x0e.context.Slice\"\x00\x12.\n\x08SetSlice\x12\x0e.context.Slice\x1a\x10.context.SliceId\"\x00\x12\x31\n\x0bRemoveSlice\x12\x10.context.SliceId\x1a\x0e.context.Empty\"\x00\x12\x39\n\x0eGetSliceEvents\x12\x0e.context.Empty\x1a\x13.context.SliceEvent\"\x00\x30\x01\x12\x44\n\x11ListConnectionIds\x12\x12.context.ServiceId\x1a\x19.context.ConnectionIdList\"\x00\x12@\n\x0fListConnections\x12\x12.context.ServiceId\x1a\x17.context.ConnectionList\"\x00\x12=\n\rGetConnection\x12\x15.context.ConnectionId\x1a\x13.context.Connection\"\x00\x12=\n\rSetConnection\x12\x13.context.Connection\x1a\x15.context.ConnectionId\"\x00\x12;\n\x10RemoveConnection\x12\x15.context.ConnectionId\x1a\x0e.context.Empty\"\x00\x12\x43\n\x13GetConnectionEvents\x12\x0e.context.Empty\x1a\x18.context.ConnectionEvent\"\x00\x30\x01\x62\x06proto3' + , + dependencies=[kpi__sample__types__pb2.DESCRIPTOR,]) + +_EVENTTYPEENUM = _descriptor.EnumDescriptor( + name='EventTypeEnum', + full_name='context.EventTypeEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='EVENTTYPE_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='EVENTTYPE_CREATE', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='EVENTTYPE_UPDATE', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='EVENTTYPE_REMOVE', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=4310, + serialized_end=4416, +) +_sym_db.RegisterEnumDescriptor(_EVENTTYPEENUM) + +EventTypeEnum = enum_type_wrapper.EnumTypeWrapper(_EVENTTYPEENUM) +_DEVICEDRIVERENUM = _descriptor.EnumDescriptor( + name='DeviceDriverEnum', + full_name='context.DeviceDriverEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='DEVICEDRIVER_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='DEVICEDRIVER_OPENCONFIG', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='DEVICEDRIVER_TRANSPORT_API', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='DEVICEDRIVER_P4', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='DEVICEDRIVER_IETF_NETWORK_TOPOLOGY', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='DEVICEDRIVER_ONF_TR_352', index=5, number=5, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=4419, + serialized_end=4616, +) +_sym_db.RegisterEnumDescriptor(_DEVICEDRIVERENUM) + +DeviceDriverEnum = enum_type_wrapper.EnumTypeWrapper(_DEVICEDRIVERENUM) +_DEVICEOPERATIONALSTATUSENUM = _descriptor.EnumDescriptor( + name='DeviceOperationalStatusEnum', + full_name='context.DeviceOperationalStatusEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='DEVICEOPERATIONALSTATUS_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='DEVICEOPERATIONALSTATUS_DISABLED', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='DEVICEOPERATIONALSTATUS_ENABLED', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=4619, + serialized_end=4762, +) +_sym_db.RegisterEnumDescriptor(_DEVICEOPERATIONALSTATUSENUM) + +DeviceOperationalStatusEnum = enum_type_wrapper.EnumTypeWrapper(_DEVICEOPERATIONALSTATUSENUM) +_SERVICETYPEENUM = _descriptor.EnumDescriptor( + name='ServiceTypeEnum', + full_name='context.ServiceTypeEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='SERVICETYPE_UNKNOWN', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SERVICETYPE_L3NM', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SERVICETYPE_L2NM', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SERVICETYPE_TAPI_CONNECTIVITY_SERVICE', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=4765, + serialized_end=4894, +) +_sym_db.RegisterEnumDescriptor(_SERVICETYPEENUM) + +ServiceTypeEnum = enum_type_wrapper.EnumTypeWrapper(_SERVICETYPEENUM) +_SERVICESTATUSENUM = _descriptor.EnumDescriptor( + name='ServiceStatusEnum', + full_name='context.ServiceStatusEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='SERVICESTATUS_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SERVICESTATUS_PLANNED', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SERVICESTATUS_ACTIVE', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SERVICESTATUS_PENDING_REMOVAL', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=4897, + serialized_end=5033, +) +_sym_db.RegisterEnumDescriptor(_SERVICESTATUSENUM) + +ServiceStatusEnum = enum_type_wrapper.EnumTypeWrapper(_SERVICESTATUSENUM) +_SLICESTATUSENUM = _descriptor.EnumDescriptor( + name='SliceStatusEnum', + full_name='context.SliceStatusEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='SLICESTATUS_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SLICESTATUS_PLANNED', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SLICESTATUS_INIT', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SLICESTATUS_ACTIVE', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='SLICESTATUS_DEINIT', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=5036, + serialized_end=5175, +) +_sym_db.RegisterEnumDescriptor(_SLICESTATUSENUM) + +SliceStatusEnum = enum_type_wrapper.EnumTypeWrapper(_SLICESTATUSENUM) +_CONFIGACTIONENUM = _descriptor.EnumDescriptor( + name='ConfigActionEnum', + full_name='context.ConfigActionEnum', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='CONFIGACTION_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='CONFIGACTION_SET', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='CONFIGACTION_DELETE', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=5177, + serialized_end=5270, +) +_sym_db.RegisterEnumDescriptor(_CONFIGACTIONENUM) + +ConfigActionEnum = enum_type_wrapper.EnumTypeWrapper(_CONFIGACTIONENUM) +EVENTTYPE_UNDEFINED = 0 +EVENTTYPE_CREATE = 1 +EVENTTYPE_UPDATE = 2 +EVENTTYPE_REMOVE = 3 +DEVICEDRIVER_UNDEFINED = 0 +DEVICEDRIVER_OPENCONFIG = 1 +DEVICEDRIVER_TRANSPORT_API = 2 +DEVICEDRIVER_P4 = 3 +DEVICEDRIVER_IETF_NETWORK_TOPOLOGY = 4 +DEVICEDRIVER_ONF_TR_352 = 5 +DEVICEOPERATIONALSTATUS_UNDEFINED = 0 +DEVICEOPERATIONALSTATUS_DISABLED = 1 +DEVICEOPERATIONALSTATUS_ENABLED = 2 +SERVICETYPE_UNKNOWN = 0 +SERVICETYPE_L3NM = 1 +SERVICETYPE_L2NM = 2 +SERVICETYPE_TAPI_CONNECTIVITY_SERVICE = 3 +SERVICESTATUS_UNDEFINED = 0 +SERVICESTATUS_PLANNED = 1 +SERVICESTATUS_ACTIVE = 2 +SERVICESTATUS_PENDING_REMOVAL = 3 +SLICESTATUS_UNDEFINED = 0 +SLICESTATUS_PLANNED = 1 +SLICESTATUS_INIT = 2 +SLICESTATUS_ACTIVE = 3 +SLICESTATUS_DEINIT = 4 +CONFIGACTION_UNDEFINED = 0 +CONFIGACTION_SET = 1 +CONFIGACTION_DELETE = 2 + + + +_EMPTY = _descriptor.Descriptor( + name='Empty', + full_name='context.Empty', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=50, + serialized_end=57, +) + + +_UUID = _descriptor.Descriptor( + name='Uuid', + full_name='context.Uuid', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='context.Uuid.uuid', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=59, + serialized_end=79, +) + + +_EVENT = _descriptor.Descriptor( + name='Event', + full_name='context.Event', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='timestamp', full_name='context.Event.timestamp', index=0, + number=1, type=1, cpp_type=5, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='event_type', full_name='context.Event.event_type', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=81, + serialized_end=151, +) + + +_CONTEXTID = _descriptor.Descriptor( + name='ContextId', + full_name='context.ContextId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_uuid', full_name='context.ContextId.context_uuid', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=153, + serialized_end=201, +) + + +_CONTEXT = _descriptor.Descriptor( + name='Context', + full_name='context.Context', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_id', full_name='context.Context.context_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='topology_ids', full_name='context.Context.topology_ids', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_ids', full_name='context.Context.service_ids', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='controller', full_name='context.Context.controller', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=204, + serialized_end=386, +) + + +_CONTEXTIDLIST = _descriptor.Descriptor( + name='ContextIdList', + full_name='context.ContextIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_ids', full_name='context.ContextIdList.context_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=388, + serialized_end=444, +) + + +_CONTEXTLIST = _descriptor.Descriptor( + name='ContextList', + full_name='context.ContextList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='contexts', full_name='context.ContextList.contexts', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=446, + serialized_end=495, +) + + +_CONTEXTEVENT = _descriptor.Descriptor( + name='ContextEvent', + full_name='context.ContextEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.ContextEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='context_id', full_name='context.ContextEvent.context_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=497, + serialized_end=582, +) + + +_TOPOLOGYID = _descriptor.Descriptor( + name='TopologyId', + full_name='context.TopologyId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_id', full_name='context.TopologyId.context_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='topology_uuid', full_name='context.TopologyId.topology_uuid', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=584, + serialized_end=674, +) + + +_TOPOLOGY = _descriptor.Descriptor( + name='Topology', + full_name='context.Topology', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='topology_id', full_name='context.Topology.topology_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_ids', full_name='context.Topology.device_ids', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='link_ids', full_name='context.Topology.link_ids', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=676, + serialized_end=802, +) + + +_TOPOLOGYIDLIST = _descriptor.Descriptor( + name='TopologyIdList', + full_name='context.TopologyIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='topology_ids', full_name='context.TopologyIdList.topology_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=804, + serialized_end=863, +) + + +_TOPOLOGYLIST = _descriptor.Descriptor( + name='TopologyList', + full_name='context.TopologyList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='topologies', full_name='context.TopologyList.topologies', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=865, + serialized_end=918, +) + + +_TOPOLOGYEVENT = _descriptor.Descriptor( + name='TopologyEvent', + full_name='context.TopologyEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.TopologyEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='topology_id', full_name='context.TopologyEvent.topology_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=920, + serialized_end=1008, +) + + +_DEVICEID = _descriptor.Descriptor( + name='DeviceId', + full_name='context.DeviceId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='device_uuid', full_name='context.DeviceId.device_uuid', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1010, + serialized_end=1056, +) + + +_DEVICE = _descriptor.Descriptor( + name='Device', + full_name='context.Device', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='device_id', full_name='context.Device.device_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_type', full_name='context.Device.device_type', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_config', full_name='context.Device.device_config', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_operational_status', full_name='context.Device.device_operational_status', index=3, + number=4, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_drivers', full_name='context.Device.device_drivers', index=4, + number=5, type=14, cpp_type=8, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_endpoints', full_name='context.Device.device_endpoints', index=5, + number=6, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1059, + serialized_end=1341, +) + + +_DEVICECONFIG = _descriptor.Descriptor( + name='DeviceConfig', + full_name='context.DeviceConfig', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='config_rules', full_name='context.DeviceConfig.config_rules', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1343, + serialized_end=1400, +) + + +_DEVICEIDLIST = _descriptor.Descriptor( + name='DeviceIdList', + full_name='context.DeviceIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='device_ids', full_name='context.DeviceIdList.device_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1402, + serialized_end=1455, +) + + +_DEVICELIST = _descriptor.Descriptor( + name='DeviceList', + full_name='context.DeviceList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='devices', full_name='context.DeviceList.devices', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1457, + serialized_end=1503, +) + + +_DEVICEEVENT = _descriptor.Descriptor( + name='DeviceEvent', + full_name='context.DeviceEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.DeviceEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_id', full_name='context.DeviceEvent.device_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1505, + serialized_end=1587, +) + + +_LINKID = _descriptor.Descriptor( + name='LinkId', + full_name='context.LinkId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='link_uuid', full_name='context.LinkId.link_uuid', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1589, + serialized_end=1631, +) + + +_LINK = _descriptor.Descriptor( + name='Link', + full_name='context.Link', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='link_id', full_name='context.Link.link_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='link_endpoint_ids', full_name='context.Link.link_endpoint_ids', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1633, + serialized_end=1721, +) + + +_LINKIDLIST = _descriptor.Descriptor( + name='LinkIdList', + full_name='context.LinkIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='link_ids', full_name='context.LinkIdList.link_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1723, + serialized_end=1770, +) + + +_LINKLIST = _descriptor.Descriptor( + name='LinkList', + full_name='context.LinkList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='links', full_name='context.LinkList.links', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1772, + serialized_end=1812, +) + + +_LINKEVENT = _descriptor.Descriptor( + name='LinkEvent', + full_name='context.LinkEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.LinkEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='link_id', full_name='context.LinkEvent.link_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1814, + serialized_end=1890, +) + + +_SERVICEID = _descriptor.Descriptor( + name='ServiceId', + full_name='context.ServiceId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_id', full_name='context.ServiceId.context_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_uuid', full_name='context.ServiceId.service_uuid', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1892, + serialized_end=1980, +) + + +_SERVICE = _descriptor.Descriptor( + name='Service', + full_name='context.Service', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='service_id', full_name='context.Service.service_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_type', full_name='context.Service.service_type', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_endpoint_ids', full_name='context.Service.service_endpoint_ids', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_constraints', full_name='context.Service.service_constraints', index=3, + number=4, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_status', full_name='context.Service.service_status', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_config', full_name='context.Service.service_config', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1983, + serialized_end=2277, +) + + +_SERVICESTATUS = _descriptor.Descriptor( + name='ServiceStatus', + full_name='context.ServiceStatus', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='service_status', full_name='context.ServiceStatus.service_status', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2279, + serialized_end=2346, +) + + +_SERVICECONFIG = _descriptor.Descriptor( + name='ServiceConfig', + full_name='context.ServiceConfig', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='config_rules', full_name='context.ServiceConfig.config_rules', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2348, + serialized_end=2406, +) + + +_SERVICEIDLIST = _descriptor.Descriptor( + name='ServiceIdList', + full_name='context.ServiceIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='service_ids', full_name='context.ServiceIdList.service_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2408, + serialized_end=2464, +) + + +_SERVICELIST = _descriptor.Descriptor( + name='ServiceList', + full_name='context.ServiceList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='services', full_name='context.ServiceList.services', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2466, + serialized_end=2515, +) + + +_SERVICEEVENT = _descriptor.Descriptor( + name='ServiceEvent', + full_name='context.ServiceEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.ServiceEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_id', full_name='context.ServiceEvent.service_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2517, + serialized_end=2602, +) + + +_SLICEID = _descriptor.Descriptor( + name='SliceId', + full_name='context.SliceId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_id', full_name='context.SliceId.context_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='slice_uuid', full_name='context.SliceId.slice_uuid', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2604, + serialized_end=2688, +) + + +_SLICE = _descriptor.Descriptor( + name='Slice', + full_name='context.Slice', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='slice_id', full_name='context.Slice.slice_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='slice_endpoint_ids', full_name='context.Slice.slice_endpoint_ids', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='slice_constraints', full_name='context.Slice.slice_constraints', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='slice_service_ids', full_name='context.Slice.slice_service_ids', index=3, + number=4, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='slice_subslice_ids', full_name='context.Slice.slice_subslice_ids', index=4, + number=5, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='slice_status', full_name='context.Slice.slice_status', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2691, + serialized_end=2968, +) + + +_SLICESTATUS = _descriptor.Descriptor( + name='SliceStatus', + full_name='context.SliceStatus', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='slice_status', full_name='context.SliceStatus.slice_status', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2970, + serialized_end=3031, +) + + +_SLICEIDLIST = _descriptor.Descriptor( + name='SliceIdList', + full_name='context.SliceIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='slice_ids', full_name='context.SliceIdList.slice_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3033, + serialized_end=3083, +) + + +_SLICELIST = _descriptor.Descriptor( + name='SliceList', + full_name='context.SliceList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='slices', full_name='context.SliceList.slices', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3085, + serialized_end=3128, +) + + +_SLICEEVENT = _descriptor.Descriptor( + name='SliceEvent', + full_name='context.SliceEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.SliceEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='slice_id', full_name='context.SliceEvent.slice_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3130, + serialized_end=3209, +) + + +_CONNECTIONID = _descriptor.Descriptor( + name='ConnectionId', + full_name='context.ConnectionId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='connection_uuid', full_name='context.ConnectionId.connection_uuid', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3211, + serialized_end=3265, +) + + +_CONNECTION = _descriptor.Descriptor( + name='Connection', + full_name='context.Connection', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='connection_id', full_name='context.Connection.connection_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='service_id', full_name='context.Connection.service_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='path_hops_endpoint_ids', full_name='context.Connection.path_hops_endpoint_ids', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='sub_service_ids', full_name='context.Connection.sub_service_ids', index=3, + number=4, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3268, + serialized_end=3464, +) + + +_CONNECTIONIDLIST = _descriptor.Descriptor( + name='ConnectionIdList', + full_name='context.ConnectionIdList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='connection_ids', full_name='context.ConnectionIdList.connection_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3466, + serialized_end=3531, +) + + +_CONNECTIONLIST = _descriptor.Descriptor( + name='ConnectionList', + full_name='context.ConnectionList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='connections', full_name='context.ConnectionList.connections', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3533, + serialized_end=3591, +) + + +_CONNECTIONEVENT = _descriptor.Descriptor( + name='ConnectionEvent', + full_name='context.ConnectionEvent', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='event', full_name='context.ConnectionEvent.event', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='connection_id', full_name='context.ConnectionEvent.connection_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3593, + serialized_end=3687, +) + + +_ENDPOINTID = _descriptor.Descriptor( + name='EndPointId', + full_name='context.EndPointId', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='topology_id', full_name='context.EndPointId.topology_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='device_id', full_name='context.EndPointId.device_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='endpoint_uuid', full_name='context.EndPointId.endpoint_uuid', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3690, + serialized_end=3820, +) + + +_ENDPOINT = _descriptor.Descriptor( + name='EndPoint', + full_name='context.EndPoint', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='endpoint_id', full_name='context.EndPoint.endpoint_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='endpoint_type', full_name='context.EndPoint.endpoint_type', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='kpi_sample_types', full_name='context.EndPoint.kpi_sample_types', index=2, + number=3, type=14, cpp_type=8, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3823, + serialized_end=3957, +) + + +_CONFIGRULE = _descriptor.Descriptor( + name='ConfigRule', + full_name='context.ConfigRule', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action', full_name='context.ConfigRule.action', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='resource_key', full_name='context.ConfigRule.resource_key', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='resource_value', full_name='context.ConfigRule.resource_value', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3959, + serialized_end=4060, +) + + +_CONSTRAINT = _descriptor.Descriptor( + name='Constraint', + full_name='context.Constraint', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='constraint_type', full_name='context.Constraint.constraint_type', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='constraint_value', full_name='context.Constraint.constraint_value', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4062, + serialized_end=4125, +) + + +_TERAFLOWCONTROLLER = _descriptor.Descriptor( + name='TeraFlowController', + full_name='context.TeraFlowController', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_id', full_name='context.TeraFlowController.context_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='ip_address', full_name='context.TeraFlowController.ip_address', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='port', full_name='context.TeraFlowController.port', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4127, + serialized_end=4221, +) + + +_AUTHENTICATIONRESULT = _descriptor.Descriptor( + name='AuthenticationResult', + full_name='context.AuthenticationResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='context_id', full_name='context.AuthenticationResult.context_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='authenticated', full_name='context.AuthenticationResult.authenticated', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4223, + serialized_end=4308, +) + +_EVENT.fields_by_name['event_type'].enum_type = _EVENTTYPEENUM +_CONTEXTID.fields_by_name['context_uuid'].message_type = _UUID +_CONTEXT.fields_by_name['context_id'].message_type = _CONTEXTID +_CONTEXT.fields_by_name['topology_ids'].message_type = _TOPOLOGYID +_CONTEXT.fields_by_name['service_ids'].message_type = _SERVICEID +_CONTEXT.fields_by_name['controller'].message_type = _TERAFLOWCONTROLLER +_CONTEXTIDLIST.fields_by_name['context_ids'].message_type = _CONTEXTID +_CONTEXTLIST.fields_by_name['contexts'].message_type = _CONTEXT +_CONTEXTEVENT.fields_by_name['event'].message_type = _EVENT +_CONTEXTEVENT.fields_by_name['context_id'].message_type = _CONTEXTID +_TOPOLOGYID.fields_by_name['context_id'].message_type = _CONTEXTID +_TOPOLOGYID.fields_by_name['topology_uuid'].message_type = _UUID +_TOPOLOGY.fields_by_name['topology_id'].message_type = _TOPOLOGYID +_TOPOLOGY.fields_by_name['device_ids'].message_type = _DEVICEID +_TOPOLOGY.fields_by_name['link_ids'].message_type = _LINKID +_TOPOLOGYIDLIST.fields_by_name['topology_ids'].message_type = _TOPOLOGYID +_TOPOLOGYLIST.fields_by_name['topologies'].message_type = _TOPOLOGY +_TOPOLOGYEVENT.fields_by_name['event'].message_type = _EVENT +_TOPOLOGYEVENT.fields_by_name['topology_id'].message_type = _TOPOLOGYID +_DEVICEID.fields_by_name['device_uuid'].message_type = _UUID +_DEVICE.fields_by_name['device_id'].message_type = _DEVICEID +_DEVICE.fields_by_name['device_config'].message_type = _DEVICECONFIG +_DEVICE.fields_by_name['device_operational_status'].enum_type = _DEVICEOPERATIONALSTATUSENUM +_DEVICE.fields_by_name['device_drivers'].enum_type = _DEVICEDRIVERENUM +_DEVICE.fields_by_name['device_endpoints'].message_type = _ENDPOINT +_DEVICECONFIG.fields_by_name['config_rules'].message_type = _CONFIGRULE +_DEVICEIDLIST.fields_by_name['device_ids'].message_type = _DEVICEID +_DEVICELIST.fields_by_name['devices'].message_type = _DEVICE +_DEVICEEVENT.fields_by_name['event'].message_type = _EVENT +_DEVICEEVENT.fields_by_name['device_id'].message_type = _DEVICEID +_LINKID.fields_by_name['link_uuid'].message_type = _UUID +_LINK.fields_by_name['link_id'].message_type = _LINKID +_LINK.fields_by_name['link_endpoint_ids'].message_type = _ENDPOINTID +_LINKIDLIST.fields_by_name['link_ids'].message_type = _LINKID +_LINKLIST.fields_by_name['links'].message_type = _LINK +_LINKEVENT.fields_by_name['event'].message_type = _EVENT +_LINKEVENT.fields_by_name['link_id'].message_type = _LINKID +_SERVICEID.fields_by_name['context_id'].message_type = _CONTEXTID +_SERVICEID.fields_by_name['service_uuid'].message_type = _UUID +_SERVICE.fields_by_name['service_id'].message_type = _SERVICEID +_SERVICE.fields_by_name['service_type'].enum_type = _SERVICETYPEENUM +_SERVICE.fields_by_name['service_endpoint_ids'].message_type = _ENDPOINTID +_SERVICE.fields_by_name['service_constraints'].message_type = _CONSTRAINT +_SERVICE.fields_by_name['service_status'].message_type = _SERVICESTATUS +_SERVICE.fields_by_name['service_config'].message_type = _SERVICECONFIG +_SERVICESTATUS.fields_by_name['service_status'].enum_type = _SERVICESTATUSENUM +_SERVICECONFIG.fields_by_name['config_rules'].message_type = _CONFIGRULE +_SERVICEIDLIST.fields_by_name['service_ids'].message_type = _SERVICEID +_SERVICELIST.fields_by_name['services'].message_type = _SERVICE +_SERVICEEVENT.fields_by_name['event'].message_type = _EVENT +_SERVICEEVENT.fields_by_name['service_id'].message_type = _SERVICEID +_SLICEID.fields_by_name['context_id'].message_type = _CONTEXTID +_SLICEID.fields_by_name['slice_uuid'].message_type = _UUID +_SLICE.fields_by_name['slice_id'].message_type = _SLICEID +_SLICE.fields_by_name['slice_endpoint_ids'].message_type = _ENDPOINTID +_SLICE.fields_by_name['slice_constraints'].message_type = _CONSTRAINT +_SLICE.fields_by_name['slice_service_ids'].message_type = _SERVICEID +_SLICE.fields_by_name['slice_subslice_ids'].message_type = _SLICEID +_SLICE.fields_by_name['slice_status'].message_type = _SLICESTATUS +_SLICESTATUS.fields_by_name['slice_status'].enum_type = _SLICESTATUSENUM +_SLICEIDLIST.fields_by_name['slice_ids'].message_type = _SLICEID +_SLICELIST.fields_by_name['slices'].message_type = _SLICE +_SLICEEVENT.fields_by_name['event'].message_type = _EVENT +_SLICEEVENT.fields_by_name['slice_id'].message_type = _SLICEID +_CONNECTIONID.fields_by_name['connection_uuid'].message_type = _UUID +_CONNECTION.fields_by_name['connection_id'].message_type = _CONNECTIONID +_CONNECTION.fields_by_name['service_id'].message_type = _SERVICEID +_CONNECTION.fields_by_name['path_hops_endpoint_ids'].message_type = _ENDPOINTID +_CONNECTION.fields_by_name['sub_service_ids'].message_type = _SERVICEID +_CONNECTIONIDLIST.fields_by_name['connection_ids'].message_type = _CONNECTIONID +_CONNECTIONLIST.fields_by_name['connections'].message_type = _CONNECTION +_CONNECTIONEVENT.fields_by_name['event'].message_type = _EVENT +_CONNECTIONEVENT.fields_by_name['connection_id'].message_type = _CONNECTIONID +_ENDPOINTID.fields_by_name['topology_id'].message_type = _TOPOLOGYID +_ENDPOINTID.fields_by_name['device_id'].message_type = _DEVICEID +_ENDPOINTID.fields_by_name['endpoint_uuid'].message_type = _UUID +_ENDPOINT.fields_by_name['endpoint_id'].message_type = _ENDPOINTID +_ENDPOINT.fields_by_name['kpi_sample_types'].enum_type = kpi__sample__types__pb2._KPISAMPLETYPE +_CONFIGRULE.fields_by_name['action'].enum_type = _CONFIGACTIONENUM +_TERAFLOWCONTROLLER.fields_by_name['context_id'].message_type = _CONTEXTID +_AUTHENTICATIONRESULT.fields_by_name['context_id'].message_type = _CONTEXTID +DESCRIPTOR.message_types_by_name['Empty'] = _EMPTY +DESCRIPTOR.message_types_by_name['Uuid'] = _UUID +DESCRIPTOR.message_types_by_name['Event'] = _EVENT +DESCRIPTOR.message_types_by_name['ContextId'] = _CONTEXTID +DESCRIPTOR.message_types_by_name['Context'] = _CONTEXT +DESCRIPTOR.message_types_by_name['ContextIdList'] = _CONTEXTIDLIST +DESCRIPTOR.message_types_by_name['ContextList'] = _CONTEXTLIST +DESCRIPTOR.message_types_by_name['ContextEvent'] = _CONTEXTEVENT +DESCRIPTOR.message_types_by_name['TopologyId'] = _TOPOLOGYID +DESCRIPTOR.message_types_by_name['Topology'] = _TOPOLOGY +DESCRIPTOR.message_types_by_name['TopologyIdList'] = _TOPOLOGYIDLIST +DESCRIPTOR.message_types_by_name['TopologyList'] = _TOPOLOGYLIST +DESCRIPTOR.message_types_by_name['TopologyEvent'] = _TOPOLOGYEVENT +DESCRIPTOR.message_types_by_name['DeviceId'] = _DEVICEID +DESCRIPTOR.message_types_by_name['Device'] = _DEVICE +DESCRIPTOR.message_types_by_name['DeviceConfig'] = _DEVICECONFIG +DESCRIPTOR.message_types_by_name['DeviceIdList'] = _DEVICEIDLIST +DESCRIPTOR.message_types_by_name['DeviceList'] = _DEVICELIST +DESCRIPTOR.message_types_by_name['DeviceEvent'] = _DEVICEEVENT +DESCRIPTOR.message_types_by_name['LinkId'] = _LINKID +DESCRIPTOR.message_types_by_name['Link'] = _LINK +DESCRIPTOR.message_types_by_name['LinkIdList'] = _LINKIDLIST +DESCRIPTOR.message_types_by_name['LinkList'] = _LINKLIST +DESCRIPTOR.message_types_by_name['LinkEvent'] = _LINKEVENT +DESCRIPTOR.message_types_by_name['ServiceId'] = _SERVICEID +DESCRIPTOR.message_types_by_name['Service'] = _SERVICE +DESCRIPTOR.message_types_by_name['ServiceStatus'] = _SERVICESTATUS +DESCRIPTOR.message_types_by_name['ServiceConfig'] = _SERVICECONFIG +DESCRIPTOR.message_types_by_name['ServiceIdList'] = _SERVICEIDLIST +DESCRIPTOR.message_types_by_name['ServiceList'] = _SERVICELIST +DESCRIPTOR.message_types_by_name['ServiceEvent'] = _SERVICEEVENT +DESCRIPTOR.message_types_by_name['SliceId'] = _SLICEID +DESCRIPTOR.message_types_by_name['Slice'] = _SLICE +DESCRIPTOR.message_types_by_name['SliceStatus'] = _SLICESTATUS +DESCRIPTOR.message_types_by_name['SliceIdList'] = _SLICEIDLIST +DESCRIPTOR.message_types_by_name['SliceList'] = _SLICELIST +DESCRIPTOR.message_types_by_name['SliceEvent'] = _SLICEEVENT +DESCRIPTOR.message_types_by_name['ConnectionId'] = _CONNECTIONID +DESCRIPTOR.message_types_by_name['Connection'] = _CONNECTION +DESCRIPTOR.message_types_by_name['ConnectionIdList'] = _CONNECTIONIDLIST +DESCRIPTOR.message_types_by_name['ConnectionList'] = _CONNECTIONLIST +DESCRIPTOR.message_types_by_name['ConnectionEvent'] = _CONNECTIONEVENT +DESCRIPTOR.message_types_by_name['EndPointId'] = _ENDPOINTID +DESCRIPTOR.message_types_by_name['EndPoint'] = _ENDPOINT +DESCRIPTOR.message_types_by_name['ConfigRule'] = _CONFIGRULE +DESCRIPTOR.message_types_by_name['Constraint'] = _CONSTRAINT +DESCRIPTOR.message_types_by_name['TeraFlowController'] = _TERAFLOWCONTROLLER +DESCRIPTOR.message_types_by_name['AuthenticationResult'] = _AUTHENTICATIONRESULT +DESCRIPTOR.enum_types_by_name['EventTypeEnum'] = _EVENTTYPEENUM +DESCRIPTOR.enum_types_by_name['DeviceDriverEnum'] = _DEVICEDRIVERENUM +DESCRIPTOR.enum_types_by_name['DeviceOperationalStatusEnum'] = _DEVICEOPERATIONALSTATUSENUM +DESCRIPTOR.enum_types_by_name['ServiceTypeEnum'] = _SERVICETYPEENUM +DESCRIPTOR.enum_types_by_name['ServiceStatusEnum'] = _SERVICESTATUSENUM +DESCRIPTOR.enum_types_by_name['SliceStatusEnum'] = _SLICESTATUSENUM +DESCRIPTOR.enum_types_by_name['ConfigActionEnum'] = _CONFIGACTIONENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +Empty = _reflection.GeneratedProtocolMessageType('Empty', (_message.Message,), { + 'DESCRIPTOR' : _EMPTY, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Empty) + }) +_sym_db.RegisterMessage(Empty) + +Uuid = _reflection.GeneratedProtocolMessageType('Uuid', (_message.Message,), { + 'DESCRIPTOR' : _UUID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Uuid) + }) +_sym_db.RegisterMessage(Uuid) + +Event = _reflection.GeneratedProtocolMessageType('Event', (_message.Message,), { + 'DESCRIPTOR' : _EVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Event) + }) +_sym_db.RegisterMessage(Event) + +ContextId = _reflection.GeneratedProtocolMessageType('ContextId', (_message.Message,), { + 'DESCRIPTOR' : _CONTEXTID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ContextId) + }) +_sym_db.RegisterMessage(ContextId) + +Context = _reflection.GeneratedProtocolMessageType('Context', (_message.Message,), { + 'DESCRIPTOR' : _CONTEXT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Context) + }) +_sym_db.RegisterMessage(Context) + +ContextIdList = _reflection.GeneratedProtocolMessageType('ContextIdList', (_message.Message,), { + 'DESCRIPTOR' : _CONTEXTIDLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ContextIdList) + }) +_sym_db.RegisterMessage(ContextIdList) + +ContextList = _reflection.GeneratedProtocolMessageType('ContextList', (_message.Message,), { + 'DESCRIPTOR' : _CONTEXTLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ContextList) + }) +_sym_db.RegisterMessage(ContextList) + +ContextEvent = _reflection.GeneratedProtocolMessageType('ContextEvent', (_message.Message,), { + 'DESCRIPTOR' : _CONTEXTEVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ContextEvent) + }) +_sym_db.RegisterMessage(ContextEvent) + +TopologyId = _reflection.GeneratedProtocolMessageType('TopologyId', (_message.Message,), { + 'DESCRIPTOR' : _TOPOLOGYID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.TopologyId) + }) +_sym_db.RegisterMessage(TopologyId) + +Topology = _reflection.GeneratedProtocolMessageType('Topology', (_message.Message,), { + 'DESCRIPTOR' : _TOPOLOGY, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Topology) + }) +_sym_db.RegisterMessage(Topology) + +TopologyIdList = _reflection.GeneratedProtocolMessageType('TopologyIdList', (_message.Message,), { + 'DESCRIPTOR' : _TOPOLOGYIDLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.TopologyIdList) + }) +_sym_db.RegisterMessage(TopologyIdList) + +TopologyList = _reflection.GeneratedProtocolMessageType('TopologyList', (_message.Message,), { + 'DESCRIPTOR' : _TOPOLOGYLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.TopologyList) + }) +_sym_db.RegisterMessage(TopologyList) + +TopologyEvent = _reflection.GeneratedProtocolMessageType('TopologyEvent', (_message.Message,), { + 'DESCRIPTOR' : _TOPOLOGYEVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.TopologyEvent) + }) +_sym_db.RegisterMessage(TopologyEvent) + +DeviceId = _reflection.GeneratedProtocolMessageType('DeviceId', (_message.Message,), { + 'DESCRIPTOR' : _DEVICEID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.DeviceId) + }) +_sym_db.RegisterMessage(DeviceId) + +Device = _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), { + 'DESCRIPTOR' : _DEVICE, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Device) + }) +_sym_db.RegisterMessage(Device) + +DeviceConfig = _reflection.GeneratedProtocolMessageType('DeviceConfig', (_message.Message,), { + 'DESCRIPTOR' : _DEVICECONFIG, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.DeviceConfig) + }) +_sym_db.RegisterMessage(DeviceConfig) + +DeviceIdList = _reflection.GeneratedProtocolMessageType('DeviceIdList', (_message.Message,), { + 'DESCRIPTOR' : _DEVICEIDLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.DeviceIdList) + }) +_sym_db.RegisterMessage(DeviceIdList) + +DeviceList = _reflection.GeneratedProtocolMessageType('DeviceList', (_message.Message,), { + 'DESCRIPTOR' : _DEVICELIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.DeviceList) + }) +_sym_db.RegisterMessage(DeviceList) + +DeviceEvent = _reflection.GeneratedProtocolMessageType('DeviceEvent', (_message.Message,), { + 'DESCRIPTOR' : _DEVICEEVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.DeviceEvent) + }) +_sym_db.RegisterMessage(DeviceEvent) + +LinkId = _reflection.GeneratedProtocolMessageType('LinkId', (_message.Message,), { + 'DESCRIPTOR' : _LINKID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.LinkId) + }) +_sym_db.RegisterMessage(LinkId) + +Link = _reflection.GeneratedProtocolMessageType('Link', (_message.Message,), { + 'DESCRIPTOR' : _LINK, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Link) + }) +_sym_db.RegisterMessage(Link) + +LinkIdList = _reflection.GeneratedProtocolMessageType('LinkIdList', (_message.Message,), { + 'DESCRIPTOR' : _LINKIDLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.LinkIdList) + }) +_sym_db.RegisterMessage(LinkIdList) + +LinkList = _reflection.GeneratedProtocolMessageType('LinkList', (_message.Message,), { + 'DESCRIPTOR' : _LINKLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.LinkList) + }) +_sym_db.RegisterMessage(LinkList) + +LinkEvent = _reflection.GeneratedProtocolMessageType('LinkEvent', (_message.Message,), { + 'DESCRIPTOR' : _LINKEVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.LinkEvent) + }) +_sym_db.RegisterMessage(LinkEvent) + +ServiceId = _reflection.GeneratedProtocolMessageType('ServiceId', (_message.Message,), { + 'DESCRIPTOR' : _SERVICEID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ServiceId) + }) +_sym_db.RegisterMessage(ServiceId) + +Service = _reflection.GeneratedProtocolMessageType('Service', (_message.Message,), { + 'DESCRIPTOR' : _SERVICE, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Service) + }) +_sym_db.RegisterMessage(Service) + +ServiceStatus = _reflection.GeneratedProtocolMessageType('ServiceStatus', (_message.Message,), { + 'DESCRIPTOR' : _SERVICESTATUS, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ServiceStatus) + }) +_sym_db.RegisterMessage(ServiceStatus) + +ServiceConfig = _reflection.GeneratedProtocolMessageType('ServiceConfig', (_message.Message,), { + 'DESCRIPTOR' : _SERVICECONFIG, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ServiceConfig) + }) +_sym_db.RegisterMessage(ServiceConfig) + +ServiceIdList = _reflection.GeneratedProtocolMessageType('ServiceIdList', (_message.Message,), { + 'DESCRIPTOR' : _SERVICEIDLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ServiceIdList) + }) +_sym_db.RegisterMessage(ServiceIdList) + +ServiceList = _reflection.GeneratedProtocolMessageType('ServiceList', (_message.Message,), { + 'DESCRIPTOR' : _SERVICELIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ServiceList) + }) +_sym_db.RegisterMessage(ServiceList) + +ServiceEvent = _reflection.GeneratedProtocolMessageType('ServiceEvent', (_message.Message,), { + 'DESCRIPTOR' : _SERVICEEVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ServiceEvent) + }) +_sym_db.RegisterMessage(ServiceEvent) + +SliceId = _reflection.GeneratedProtocolMessageType('SliceId', (_message.Message,), { + 'DESCRIPTOR' : _SLICEID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.SliceId) + }) +_sym_db.RegisterMessage(SliceId) + +Slice = _reflection.GeneratedProtocolMessageType('Slice', (_message.Message,), { + 'DESCRIPTOR' : _SLICE, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Slice) + }) +_sym_db.RegisterMessage(Slice) + +SliceStatus = _reflection.GeneratedProtocolMessageType('SliceStatus', (_message.Message,), { + 'DESCRIPTOR' : _SLICESTATUS, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.SliceStatus) + }) +_sym_db.RegisterMessage(SliceStatus) + +SliceIdList = _reflection.GeneratedProtocolMessageType('SliceIdList', (_message.Message,), { + 'DESCRIPTOR' : _SLICEIDLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.SliceIdList) + }) +_sym_db.RegisterMessage(SliceIdList) + +SliceList = _reflection.GeneratedProtocolMessageType('SliceList', (_message.Message,), { + 'DESCRIPTOR' : _SLICELIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.SliceList) + }) +_sym_db.RegisterMessage(SliceList) + +SliceEvent = _reflection.GeneratedProtocolMessageType('SliceEvent', (_message.Message,), { + 'DESCRIPTOR' : _SLICEEVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.SliceEvent) + }) +_sym_db.RegisterMessage(SliceEvent) + +ConnectionId = _reflection.GeneratedProtocolMessageType('ConnectionId', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionId) + }) +_sym_db.RegisterMessage(ConnectionId) + +Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTION, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Connection) + }) +_sym_db.RegisterMessage(Connection) + +ConnectionIdList = _reflection.GeneratedProtocolMessageType('ConnectionIdList', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONIDLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionIdList) + }) +_sym_db.RegisterMessage(ConnectionIdList) + +ConnectionList = _reflection.GeneratedProtocolMessageType('ConnectionList', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONLIST, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionList) + }) +_sym_db.RegisterMessage(ConnectionList) + +ConnectionEvent = _reflection.GeneratedProtocolMessageType('ConnectionEvent', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONEVENT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConnectionEvent) + }) +_sym_db.RegisterMessage(ConnectionEvent) + +EndPointId = _reflection.GeneratedProtocolMessageType('EndPointId', (_message.Message,), { + 'DESCRIPTOR' : _ENDPOINTID, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.EndPointId) + }) +_sym_db.RegisterMessage(EndPointId) + +EndPoint = _reflection.GeneratedProtocolMessageType('EndPoint', (_message.Message,), { + 'DESCRIPTOR' : _ENDPOINT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.EndPoint) + }) +_sym_db.RegisterMessage(EndPoint) + +ConfigRule = _reflection.GeneratedProtocolMessageType('ConfigRule', (_message.Message,), { + 'DESCRIPTOR' : _CONFIGRULE, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.ConfigRule) + }) +_sym_db.RegisterMessage(ConfigRule) + +Constraint = _reflection.GeneratedProtocolMessageType('Constraint', (_message.Message,), { + 'DESCRIPTOR' : _CONSTRAINT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.Constraint) + }) +_sym_db.RegisterMessage(Constraint) + +TeraFlowController = _reflection.GeneratedProtocolMessageType('TeraFlowController', (_message.Message,), { + 'DESCRIPTOR' : _TERAFLOWCONTROLLER, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.TeraFlowController) + }) +_sym_db.RegisterMessage(TeraFlowController) + +AuthenticationResult = _reflection.GeneratedProtocolMessageType('AuthenticationResult', (_message.Message,), { + 'DESCRIPTOR' : _AUTHENTICATIONRESULT, + '__module__' : 'context_pb2' + # @@protoc_insertion_point(class_scope:context.AuthenticationResult) + }) +_sym_db.RegisterMessage(AuthenticationResult) + + + +_CONTEXTSERVICE = _descriptor.ServiceDescriptor( + name='ContextService', + full_name='context.ContextService', + file=DESCRIPTOR, + index=0, + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_start=5273, + serialized_end=7688, + methods=[ + _descriptor.MethodDescriptor( + name='ListContextIds', + full_name='context.ContextService.ListContextIds', + index=0, + containing_service=None, + input_type=_EMPTY, + output_type=_CONTEXTIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListContexts', + full_name='context.ContextService.ListContexts', + index=1, + containing_service=None, + input_type=_EMPTY, + output_type=_CONTEXTLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetContext', + full_name='context.ContextService.GetContext', + index=2, + containing_service=None, + input_type=_CONTEXTID, + output_type=_CONTEXT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetContext', + full_name='context.ContextService.SetContext', + index=3, + containing_service=None, + input_type=_CONTEXT, + output_type=_CONTEXTID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemoveContext', + full_name='context.ContextService.RemoveContext', + index=4, + containing_service=None, + input_type=_CONTEXTID, + output_type=_EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetContextEvents', + full_name='context.ContextService.GetContextEvents', + index=5, + containing_service=None, + input_type=_EMPTY, + output_type=_CONTEXTEVENT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListTopologyIds', + full_name='context.ContextService.ListTopologyIds', + index=6, + containing_service=None, + input_type=_CONTEXTID, + output_type=_TOPOLOGYIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListTopologies', + full_name='context.ContextService.ListTopologies', + index=7, + containing_service=None, + input_type=_CONTEXTID, + output_type=_TOPOLOGYLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetTopology', + full_name='context.ContextService.GetTopology', + index=8, + containing_service=None, + input_type=_TOPOLOGYID, + output_type=_TOPOLOGY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetTopology', + full_name='context.ContextService.SetTopology', + index=9, + containing_service=None, + input_type=_TOPOLOGY, + output_type=_TOPOLOGYID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemoveTopology', + full_name='context.ContextService.RemoveTopology', + index=10, + containing_service=None, + input_type=_TOPOLOGYID, + output_type=_EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetTopologyEvents', + full_name='context.ContextService.GetTopologyEvents', + index=11, + containing_service=None, + input_type=_EMPTY, + output_type=_TOPOLOGYEVENT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListDeviceIds', + full_name='context.ContextService.ListDeviceIds', + index=12, + containing_service=None, + input_type=_EMPTY, + output_type=_DEVICEIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListDevices', + full_name='context.ContextService.ListDevices', + index=13, + containing_service=None, + input_type=_EMPTY, + output_type=_DEVICELIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetDevice', + full_name='context.ContextService.GetDevice', + index=14, + containing_service=None, + input_type=_DEVICEID, + output_type=_DEVICE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetDevice', + full_name='context.ContextService.SetDevice', + index=15, + containing_service=None, + input_type=_DEVICE, + output_type=_DEVICEID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemoveDevice', + full_name='context.ContextService.RemoveDevice', + index=16, + containing_service=None, + input_type=_DEVICEID, + output_type=_EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetDeviceEvents', + full_name='context.ContextService.GetDeviceEvents', + index=17, + containing_service=None, + input_type=_EMPTY, + output_type=_DEVICEEVENT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListLinkIds', + full_name='context.ContextService.ListLinkIds', + index=18, + containing_service=None, + input_type=_EMPTY, + output_type=_LINKIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListLinks', + full_name='context.ContextService.ListLinks', + index=19, + containing_service=None, + input_type=_EMPTY, + output_type=_LINKLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetLink', + full_name='context.ContextService.GetLink', + index=20, + containing_service=None, + input_type=_LINKID, + output_type=_LINK, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetLink', + full_name='context.ContextService.SetLink', + index=21, + containing_service=None, + input_type=_LINK, + output_type=_LINKID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemoveLink', + full_name='context.ContextService.RemoveLink', + index=22, + containing_service=None, + input_type=_LINKID, + output_type=_EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetLinkEvents', + full_name='context.ContextService.GetLinkEvents', + index=23, + containing_service=None, + input_type=_EMPTY, + output_type=_LINKEVENT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListServiceIds', + full_name='context.ContextService.ListServiceIds', + index=24, + containing_service=None, + input_type=_CONTEXTID, + output_type=_SERVICEIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListServices', + full_name='context.ContextService.ListServices', + index=25, + containing_service=None, + input_type=_CONTEXTID, + output_type=_SERVICELIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetService', + full_name='context.ContextService.GetService', + index=26, + containing_service=None, + input_type=_SERVICEID, + output_type=_SERVICE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetService', + full_name='context.ContextService.SetService', + index=27, + containing_service=None, + input_type=_SERVICE, + output_type=_SERVICEID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemoveService', + full_name='context.ContextService.RemoveService', + index=28, + containing_service=None, + input_type=_SERVICEID, + output_type=_EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetServiceEvents', + full_name='context.ContextService.GetServiceEvents', + index=29, + containing_service=None, + input_type=_EMPTY, + output_type=_SERVICEEVENT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListSliceIds', + full_name='context.ContextService.ListSliceIds', + index=30, + containing_service=None, + input_type=_CONTEXTID, + output_type=_SLICEIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListSlices', + full_name='context.ContextService.ListSlices', + index=31, + containing_service=None, + input_type=_CONTEXTID, + output_type=_SLICELIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetSlice', + full_name='context.ContextService.GetSlice', + index=32, + containing_service=None, + input_type=_SLICEID, + output_type=_SLICE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetSlice', + full_name='context.ContextService.SetSlice', + index=33, + containing_service=None, + input_type=_SLICE, + output_type=_SLICEID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemoveSlice', + full_name='context.ContextService.RemoveSlice', + index=34, + containing_service=None, + input_type=_SLICEID, + output_type=_EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetSliceEvents', + full_name='context.ContextService.GetSliceEvents', + index=35, + containing_service=None, + input_type=_EMPTY, + output_type=_SLICEEVENT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListConnectionIds', + full_name='context.ContextService.ListConnectionIds', + index=36, + containing_service=None, + input_type=_SERVICEID, + output_type=_CONNECTIONIDLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='ListConnections', + full_name='context.ContextService.ListConnections', + index=37, + containing_service=None, + input_type=_SERVICEID, + output_type=_CONNECTIONLIST, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetConnection', + full_name='context.ContextService.GetConnection', + index=38, + containing_service=None, + input_type=_CONNECTIONID, + output_type=_CONNECTION, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetConnection', + full_name='context.ContextService.SetConnection', + index=39, + containing_service=None, + input_type=_CONNECTION, + output_type=_CONNECTIONID, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='RemoveConnection', + full_name='context.ContextService.RemoveConnection', + index=40, + containing_service=None, + input_type=_CONNECTIONID, + output_type=_EMPTY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetConnectionEvents', + full_name='context.ContextService.GetConnectionEvents', + index=41, + containing_service=None, + input_type=_EMPTY, + output_type=_CONNECTIONEVENT, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), +]) +_sym_db.RegisterServiceDescriptor(_CONTEXTSERVICE) + +DESCRIPTOR.services_by_name['ContextService'] = _CONTEXTSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/src/pathcomp/proto/kpi_sample_types_pb2.py b/src/pathcomp/proto/kpi_sample_types_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..ea7fd2f82757d4c3db02d7e2c7817e2787b0b490 --- /dev/null +++ b/src/pathcomp/proto/kpi_sample_types_pb2.py @@ -0,0 +1,78 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: kpi_sample_types.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='kpi_sample_types.proto', + package='kpi_sample_types', + syntax='proto3', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\x16kpi_sample_types.proto\x12\x10kpi_sample_types*\xbe\x01\n\rKpiSampleType\x12\x19\n\x15KPISAMPLETYPE_UNKNOWN\x10\x00\x12%\n!KPISAMPLETYPE_PACKETS_TRANSMITTED\x10\x65\x12\"\n\x1eKPISAMPLETYPE_PACKETS_RECEIVED\x10\x66\x12$\n\x1fKPISAMPLETYPE_BYTES_TRANSMITTED\x10\xc9\x01\x12!\n\x1cKPISAMPLETYPE_BYTES_RECEIVED\x10\xca\x01\x62\x06proto3' +) + +_KPISAMPLETYPE = _descriptor.EnumDescriptor( + name='KpiSampleType', + full_name='kpi_sample_types.KpiSampleType', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='KPISAMPLETYPE_UNKNOWN', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='KPISAMPLETYPE_PACKETS_TRANSMITTED', index=1, number=101, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='KPISAMPLETYPE_PACKETS_RECEIVED', index=2, number=102, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='KPISAMPLETYPE_BYTES_TRANSMITTED', index=3, number=201, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='KPISAMPLETYPE_BYTES_RECEIVED', index=4, number=202, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=45, + serialized_end=235, +) +_sym_db.RegisterEnumDescriptor(_KPISAMPLETYPE) + +KpiSampleType = enum_type_wrapper.EnumTypeWrapper(_KPISAMPLETYPE) +KPISAMPLETYPE_UNKNOWN = 0 +KPISAMPLETYPE_PACKETS_TRANSMITTED = 101 +KPISAMPLETYPE_PACKETS_RECEIVED = 102 +KPISAMPLETYPE_BYTES_TRANSMITTED = 201 +KPISAMPLETYPE_BYTES_RECEIVED = 202 + + +DESCRIPTOR.enum_types_by_name['KpiSampleType'] = _KPISAMPLETYPE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + + +# @@protoc_insertion_point(module_scope) diff --git a/src/pathcomp/proto/pathcomp_pb2.py b/src/pathcomp/proto/pathcomp_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..bae04a93e1554f2db743c8a9d3c753fcb878fff6 --- /dev/null +++ b/src/pathcomp/proto/pathcomp_pb2.py @@ -0,0 +1,148 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: pathcomp.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import context_pb2 as context__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='pathcomp.proto', + package='pathcomp', + syntax='proto3', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\x0epathcomp.proto\x12\x08pathcomp\x1a\rcontext.proto\"5\n\x0fPathCompRequest\x12\"\n\x08services\x18\x01 \x03(\x0b\x32\x10.context.Service\"]\n\rPathCompReply\x12\"\n\x08services\x18\x01 \x03(\x0b\x32\x10.context.Service\x12(\n\x0b\x63onnections\x18\x02 \x03(\x0b\x32\x13.context.Connection2R\n\x0fPathCompService\x12?\n\x07\x43ompute\x12\x19.pathcomp.PathCompRequest\x1a\x17.pathcomp.PathCompReply\"\x00\x62\x06proto3' + , + dependencies=[context__pb2.DESCRIPTOR,]) + + + + +_PATHCOMPREQUEST = _descriptor.Descriptor( + name='PathCompRequest', + full_name='pathcomp.PathCompRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='services', full_name='pathcomp.PathCompRequest.services', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=43, + serialized_end=96, +) + + +_PATHCOMPREPLY = _descriptor.Descriptor( + name='PathCompReply', + full_name='pathcomp.PathCompReply', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='services', full_name='pathcomp.PathCompReply.services', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='connections', full_name='pathcomp.PathCompReply.connections', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=98, + serialized_end=191, +) + +_PATHCOMPREQUEST.fields_by_name['services'].message_type = context__pb2._SERVICE +_PATHCOMPREPLY.fields_by_name['services'].message_type = context__pb2._SERVICE +_PATHCOMPREPLY.fields_by_name['connections'].message_type = context__pb2._CONNECTION +DESCRIPTOR.message_types_by_name['PathCompRequest'] = _PATHCOMPREQUEST +DESCRIPTOR.message_types_by_name['PathCompReply'] = _PATHCOMPREPLY +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +PathCompRequest = _reflection.GeneratedProtocolMessageType('PathCompRequest', (_message.Message,), { + 'DESCRIPTOR' : _PATHCOMPREQUEST, + '__module__' : 'pathcomp_pb2' + # @@protoc_insertion_point(class_scope:pathcomp.PathCompRequest) + }) +_sym_db.RegisterMessage(PathCompRequest) + +PathCompReply = _reflection.GeneratedProtocolMessageType('PathCompReply', (_message.Message,), { + 'DESCRIPTOR' : _PATHCOMPREPLY, + '__module__' : 'pathcomp_pb2' + # @@protoc_insertion_point(class_scope:pathcomp.PathCompReply) + }) +_sym_db.RegisterMessage(PathCompReply) + + + +_PATHCOMPSERVICE = _descriptor.ServiceDescriptor( + name='PathCompService', + full_name='pathcomp.PathCompService', + file=DESCRIPTOR, + index=0, + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_start=193, + serialized_end=275, + methods=[ + _descriptor.MethodDescriptor( + name='Compute', + full_name='pathcomp.PathCompService.Compute', + index=0, + containing_service=None, + input_type=_PATHCOMPREQUEST, + output_type=_PATHCOMPREPLY, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), +]) +_sym_db.RegisterServiceDescriptor(_PATHCOMPSERVICE) + +DESCRIPTOR.services_by_name['PathCompService'] = _PATHCOMPSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/src/pathcomp/proto/pathcomp_pb2_grpc.py b/src/pathcomp/proto/pathcomp_pb2_grpc.py new file mode 100644 index 0000000000000000000000000000000000000000..86ff7a3fb9fa1ca88d4edc8d688b8a3e6f0bd061 --- /dev/null +++ b/src/pathcomp/proto/pathcomp_pb2_grpc.py @@ -0,0 +1,66 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from . import pathcomp_pb2 as pathcomp__pb2 + + +class PathCompServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.Compute = channel.unary_unary( + '/pathcomp.PathCompService/Compute', + request_serializer=pathcomp__pb2.PathCompRequest.SerializeToString, + response_deserializer=pathcomp__pb2.PathCompReply.FromString, + ) + + +class PathCompServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def Compute(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_PathCompServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'Compute': grpc.unary_unary_rpc_method_handler( + servicer.Compute, + request_deserializer=pathcomp__pb2.PathCompRequest.FromString, + response_serializer=pathcomp__pb2.PathCompReply.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pathcomp.PathCompService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class PathCompService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def Compute(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pathcomp.PathCompService/Compute', + pathcomp__pb2.PathCompRequest.SerializeToString, + pathcomp__pb2.PathCompReply.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/pathcomp/requirements.in b/src/pathcomp/requirements.in new file mode 100644 index 0000000000000000000000000000000000000000..f6cd8ce4034ef3ce2def2ea19706824c2dcfe8f2 --- /dev/null +++ b/src/pathcomp/requirements.in @@ -0,0 +1,9 @@ +grpcio==1.43.0 +grpcio-health-checking==1.43.0 +prometheus-client==0.13.0 +protobuf==3.19.3 +pytest==6.2.5 +pytest-benchmark==3.4.1 +python-json-logger==2.0.2 +requests==2.27.1 +coverage==6.3 diff --git a/src/pathcomp/service/PathCompService.py b/src/pathcomp/service/PathCompService.py new file mode 100644 index 0000000000000000000000000000000000000000..7fd9eab3ba8de53ddc5fdee018519126c44361f0 --- /dev/null +++ b/src/pathcomp/service/PathCompService.py @@ -0,0 +1,28 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +from common.Constants import ServiceNameEnum +from common.Settings import get_service_port_grpc +from common.tools.service.GenericGrpcService import GenericGrpcService +from pathcomp.proto.pathcomp_pb2_grpc import add_PathCompServiceServicer_to_server +from .PathCompServiceServicerImpl import PathCompServiceServicerImpl + +class PathCompService(GenericGrpcService): + def __init__(self, cls_name: str = __name__) -> None: + port = get_service_port_grpc(ServiceNameEnum.PATHCOMP) + super().__init__(port, cls_name=cls_name) + self.pathcomp_servicer = PathCompServiceServicerImpl() + + def install_servicers(self): + add_PathCompServiceServicer_to_server(self.pathcomp_servicer, self.server) diff --git a/src/pathcomp/service/PathCompServiceServicerImpl.py b/src/pathcomp/service/PathCompServiceServicerImpl.py new file mode 100644 index 0000000000000000000000000000000000000000..e1c7251508ea767a38d3102cca8f4edd50cf9170 --- /dev/null +++ b/src/pathcomp/service/PathCompServiceServicerImpl.py @@ -0,0 +1,85 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +from typing import List +import grpc, logging, uuid +from common.rpc_method_wrapper.Decorator import create_metrics, safe_and_metered_rpc_method +from common.tools.grpc.Tools import grpc_message_to_json, grpc_message_to_json_string +from context.client.ContextClient import ContextClient +from context.proto.context_pb2 import Connection, Empty, EndPointId +from pathcomp.proto.pathcomp_pb2 import PathCompReply, PathCompRequest +from pathcomp.proto.pathcomp_pb2_grpc import PathCompServiceServicer + +LOGGER = logging.getLogger(__name__) + +SERVICE_NAME = 'PathComp' +METHOD_NAMES = ['Compute'] +METRICS = create_metrics(SERVICE_NAME, METHOD_NAMES) + +class PathCompServiceServicerImpl(PathCompServiceServicer): + def __init__(self) -> None: + LOGGER.debug('Creating Servicer...') + LOGGER.debug('Servicer Created') + + @safe_and_metered_rpc_method(METRICS, LOGGER) + def Compute(self, request : PathCompRequest, context : grpc.ServicerContext) -> PathCompReply: + LOGGER.info('[Compute] begin ; request = {:s}'.format(grpc_message_to_json_string(request))) + + context_client = ContextClient() + + # TODO: consider filtering resources + + grpc_contexts = context_client.ListContexts(Empty()) + grpc_devices = context_client.ListDevices(Empty()) + grpc_links = context_client.ListLinks(Empty()) + for grpc_context in grpc_contexts.contexts: + # TODO: add context to request + grpc_topologies = context_client.ListTopologies(grpc_context.context_id) + for grpc_topology in grpc_topologies.topologies: #pylint: disable=unused-variable + # TODO: add topology to request + pass + for grpc_device in grpc_devices.devices: #pylint: disable=unused-variable + # TODO: add device to request + pass + for grpc_link in grpc_links.links: #pylint: disable=unused-variable + # TODO: add link to request + pass + + reply = PathCompReply() + # TODO: issue path computation request + # TODO: compose reply populating reply.services and reply.connections + + for service in request.services: + # TODO: implement support for multi-point services + service_endpoint_ids = service.service_endpoint_ids + if len(service_endpoint_ids) != 2: raise NotImplementedError('Service must have 2 endpoints') + a_endpoint_id, z_endpoint_id = service_endpoint_ids[0], service_endpoint_ids[-1] + + connection_uuid = str(uuid.uuid4()) + connection_path_hops : List[EndPointId] = [] + connection_path_hops.extend([ + grpc_message_to_json(a_endpoint_id), + grpc_message_to_json(z_endpoint_id), + ]) + connection = Connection(**{ + 'connection_id': {'connection_uuid': {'uuid': connection_uuid}}, + 'service_id': grpc_message_to_json(service.service_id), + 'path_hops_endpoint_ids': connection_path_hops, + 'sub_service_ids': [], + }) + reply.connections.append(connection) #pylint: disable=no-member + reply.services.append(service) #pylint: disable=no-member + + LOGGER.info('[Compute] end ; reply = {:s}'.format(grpc_message_to_json_string(reply))) + return reply diff --git a/src/pathcomp/service/__init__.py b/src/pathcomp/service/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..70a33251242c51f49140e596b8208a19dd5245f7 --- /dev/null +++ b/src/pathcomp/service/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + diff --git a/src/pathcomp/service/__main__.py b/src/pathcomp/service/__main__.py new file mode 100644 index 0000000000000000000000000000000000000000..a41b9e994f02db725c4adf371d9638fd5135693e --- /dev/null +++ b/src/pathcomp/service/__main__.py @@ -0,0 +1,65 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +import logging, signal, sys, threading +from prometheus_client import start_http_server +from common.Constants import ServiceNameEnum +from common.Settings import ( + ENVVAR_SUFIX_SERVICE_HOST, ENVVAR_SUFIX_SERVICE_PORT_GRPC, get_env_var_name, get_log_level, get_metrics_port, + wait_for_environment_variables) +from .PathCompService import PathCompService + +terminate = threading.Event() +LOGGER : logging.Logger = None + +def signal_handler(signal, frame): # pylint: disable=redefined-outer-name + LOGGER.warning('Terminate signal received') + terminate.set() + +def main(): + global LOGGER # pylint: disable=global-statement + + log_level = get_log_level() + logging.basicConfig(level=log_level) + LOGGER = logging.getLogger(__name__) + + wait_for_environment_variables([ + get_env_var_name(ServiceNameEnum.CONTEXT, ENVVAR_SUFIX_SERVICE_HOST ), + get_env_var_name(ServiceNameEnum.CONTEXT, ENVVAR_SUFIX_SERVICE_PORT_GRPC), + ]) + + signal.signal(signal.SIGINT, signal_handler) + signal.signal(signal.SIGTERM, signal_handler) + + LOGGER.info('Starting...') + + # Start metrics server + metrics_port = get_metrics_port() + start_http_server(metrics_port) + + # Starting service service + grpc_service = PathCompService() + grpc_service.start() + + # Wait for Ctrl+C or termination signal + while not terminate.wait(timeout=0.1): pass + + LOGGER.info('Terminating...') + grpc_service.stop() + + LOGGER.info('Bye') + return 0 + +if __name__ == '__main__': + sys.exit(main()) diff --git a/src/pathcomp/tests/.gitignore b/src/pathcomp/tests/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..6b97d6fe3ad32f39097745229ab7f547f26ecb12 --- /dev/null +++ b/src/pathcomp/tests/.gitignore @@ -0,0 +1 @@ +# Add here your files containing confidential testbed details such as IP addresses, ports, usernames, passwords, etc. diff --git a/src/pathcomp/tests/MockService_Dependencies.py b/src/pathcomp/tests/MockService_Dependencies.py new file mode 100644 index 0000000000000000000000000000000000000000..f390b26029309211629c7d8292838c105ad4bc05 --- /dev/null +++ b/src/pathcomp/tests/MockService_Dependencies.py @@ -0,0 +1,58 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +import os +from typing import Union +from common.Constants import ServiceNameEnum +from common.Settings import ENVVAR_SUFIX_SERVICE_HOST, ENVVAR_SUFIX_SERVICE_PORT_GRPC, get_env_var_name +from common.tests.MockServicerImpl_Context import MockServicerImpl_Context +from common.tests.MockServicerImpl_Device import MockServicerImpl_Device +from common.tests.MockServicerImpl_Service import MockServicerImpl_Service +from common.tools.service.GenericGrpcService import GenericGrpcService +from context.proto.context_pb2_grpc import add_ContextServiceServicer_to_server +from device.proto.device_pb2_grpc import add_DeviceServiceServicer_to_server +from service.proto.service_pb2_grpc import add_ServiceServiceServicer_to_server + +LOCAL_HOST = '127.0.0.1' + +SERVICE_CONTEXT = ServiceNameEnum.CONTEXT +SERVICE_DEVICE = ServiceNameEnum.DEVICE +SERVICE_SERVICE = ServiceNameEnum.SERVICE + +class MockService_Dependencies(GenericGrpcService): + # Mock Service implementing Context, Device, and Service to simplify unitary tests of PathComp + + def __init__(self, bind_port: Union[str, int]) -> None: + super().__init__(bind_port, LOCAL_HOST, enable_health_servicer=False, cls_name='MockService') + + # pylint: disable=attribute-defined-outside-init + def install_servicers(self): + self.context_servicer = MockServicerImpl_Context() + add_ContextServiceServicer_to_server(self.context_servicer, self.server) + + self.device_servicer = MockServicerImpl_Device() + add_DeviceServiceServicer_to_server(self.device_servicer, self.server) + + self.service_servicer = MockServicerImpl_Service() + add_ServiceServiceServicer_to_server(self.service_servicer, self.server) + + def configure_env_vars(self): + os.environ[get_env_var_name(SERVICE_CONTEXT, ENVVAR_SUFIX_SERVICE_HOST )] = str(self.bind_address) + os.environ[get_env_var_name(SERVICE_CONTEXT, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(self.bind_port) + + os.environ[get_env_var_name(SERVICE_DEVICE, ENVVAR_SUFIX_SERVICE_HOST )] = str(self.bind_address) + os.environ[get_env_var_name(SERVICE_DEVICE, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(self.bind_port) + + os.environ[get_env_var_name(SERVICE_SERVICE, ENVVAR_SUFIX_SERVICE_HOST )] = str(self.bind_address) + os.environ[get_env_var_name(SERVICE_SERVICE, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(self.bind_port) diff --git a/src/pathcomp/tests/Objects.py b/src/pathcomp/tests/Objects.py new file mode 100644 index 0000000000000000000000000000000000000000..f4785d7ae670efcc5525d6b00c4baf3acf3f22b1 --- /dev/null +++ b/src/pathcomp/tests/Objects.py @@ -0,0 +1,110 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +from common.Constants import DEFAULT_CONTEXT_UUID, DEFAULT_TOPOLOGY_UUID +from common.tools.object_factory.Constraint import json_constraint +from common.tools.object_factory.Context import json_context, json_context_id +from common.tools.object_factory.Device import json_device_emulated_packet_router_disabled, json_device_id +from common.tools.object_factory.EndPoint import json_endpoints +from common.tools.object_factory.Link import get_link_uuid, json_link, json_link_id +from common.tools.object_factory.Service import get_service_uuid, json_service_l3nm_planned +from common.tools.object_factory.Topology import json_topology, json_topology_id + +def compose_device(device_uuid, endpoint_uuids): + device_id = json_device_id(device_uuid) + endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + endpoints = json_endpoints(device_id, endpoints, topology_id=TOPOLOGY_A_ID) + device = json_device_emulated_packet_router_disabled(device_uuid, endpoints=endpoints) + return device_id, endpoints, device + +def compose_link(endpoint_a, endpoint_z): + link_uuid = get_link_uuid(endpoint_a['endpoint_id'], endpoint_z['endpoint_id']) + link_id = json_link_id(link_uuid) + link = json_link(link_uuid, [endpoint_a['endpoint_id'], endpoint_z['endpoint_id']]) + return link_id, link + +def compose_service(endpoint_a, endpoint_z, constraints=[]): + service_uuid = get_service_uuid(endpoint_a['endpoint_id'], endpoint_z['endpoint_id']) + endpoint_ids = [endpoint_a['endpoint_id'], endpoint_z['endpoint_id']] + service = json_service_l3nm_planned(service_uuid, endpoint_ids=endpoint_ids, constraints=constraints) + return service + +# ----- Context -------------------------------------------------------------------------------------------------------- +CONTEXT_ID = json_context_id(DEFAULT_CONTEXT_UUID) +CONTEXT = json_context(DEFAULT_CONTEXT_UUID) + +# ----- Domains -------------------------------------------------------------------------------------------------------- +TOPOLOGY_ADMIN_ID = json_topology_id(DEFAULT_TOPOLOGY_UUID, context_id=CONTEXT_ID) +TOPOLOGY_ADMIN = json_topology(DEFAULT_TOPOLOGY_UUID, context_id=CONTEXT_ID) + +TOPOLOGY_A_ID = json_topology_id('A', context_id=CONTEXT_ID) +TOPOLOGY_A = json_topology('A', context_id=CONTEXT_ID) + +TOPOLOGY_B_ID = json_topology_id('B', context_id=CONTEXT_ID) +TOPOLOGY_B = json_topology('B', context_id=CONTEXT_ID) + +TOPOLOGY_C_ID = json_topology_id('C', context_id=CONTEXT_ID) +TOPOLOGY_C = json_topology('C', context_id=CONTEXT_ID) + +# ----- Devices Domain A ----------------------------------------------------------------------------------------------- +DEVICE_A1_ID, DEVICE_A1_ENDPOINTS, DEVICE_A1 = compose_device('A1', ['1', '2', '2000']) +DEVICE_A2_ID, DEVICE_A2_ENDPOINTS, DEVICE_A2 = compose_device('A2', ['1', '2', '1001']) +DEVICE_A3_ID, DEVICE_A3_ENDPOINTS, DEVICE_A3 = compose_device('A3', ['1', '2']) + +# ----- Devices Domain B ----------------------------------------------------------------------------------------------- +DEVICE_B1_ID, DEVICE_B1_ENDPOINTS, DEVICE_B1 = compose_device('B1', ['1', '2', '2000']) +DEVICE_B2_ID, DEVICE_B2_ENDPOINTS, DEVICE_B2 = compose_device('B2', ['1', '2', '1002']) +DEVICE_B3_ID, DEVICE_B3_ENDPOINTS, DEVICE_B3 = compose_device('B3', ['1', '2']) + +# ----- Devices Domain C ----------------------------------------------------------------------------------------------- +DEVICE_C1_ID, DEVICE_C1_ENDPOINTS, DEVICE_C1 = compose_device('C1', ['1', '2', '1001']) +DEVICE_C2_ID, DEVICE_C2_ENDPOINTS, DEVICE_C2 = compose_device('C2', ['1', '2']) +DEVICE_C3_ID, DEVICE_C3_ENDPOINTS, DEVICE_C3 = compose_device('C3', ['1', '2', '1002']) + +# ----- InterDomain Links ---------------------------------------------------------------------------------------------- +LINK_A2_C3_ID, LINK_A2_C3 = compose_link(DEVICE_A2_ENDPOINTS[2], DEVICE_C3_ENDPOINTS[2]) +LINK_C1_B2_ID, LINK_C1_B2 = compose_link(DEVICE_C1_ENDPOINTS[2], DEVICE_B2_ENDPOINTS[2]) + +# ----- IntraDomain A Links -------------------------------------------------------------------------------------------- +LINK_A1_A2_ID, LINK_A1_A2 = compose_link(DEVICE_A1_ENDPOINTS[0], DEVICE_A2_ENDPOINTS[0]) +LINK_A1_A3_ID, LINK_A1_A3 = compose_link(DEVICE_A1_ENDPOINTS[1], DEVICE_A3_ENDPOINTS[0]) +LINK_A2_A3_ID, LINK_A2_A3 = compose_link(DEVICE_A2_ENDPOINTS[1], DEVICE_A3_ENDPOINTS[1]) + +# ----- IntraDomain B Links -------------------------------------------------------------------------------------------- +LINK_B1_B2_ID, LINK_B1_B2 = compose_link(DEVICE_B1_ENDPOINTS[0], DEVICE_B2_ENDPOINTS[0]) +LINK_B1_B3_ID, LINK_B1_B3 = compose_link(DEVICE_B1_ENDPOINTS[1], DEVICE_B3_ENDPOINTS[0]) +LINK_B2_B3_ID, LINK_B2_B3 = compose_link(DEVICE_B2_ENDPOINTS[1], DEVICE_B3_ENDPOINTS[1]) + +# ----- IntraDomain C Links -------------------------------------------------------------------------------------------- +LINK_C1_C2_ID, LINK_C1_C2 = compose_link(DEVICE_C1_ENDPOINTS[0], DEVICE_C2_ENDPOINTS[0]) +LINK_C1_C3_ID, LINK_C1_C3 = compose_link(DEVICE_C1_ENDPOINTS[1], DEVICE_C3_ENDPOINTS[0]) +LINK_C2_C3_ID, LINK_C2_C3 = compose_link(DEVICE_C2_ENDPOINTS[1], DEVICE_C3_ENDPOINTS[1]) + +# ----- Service -------------------------------------------------------------------------------------------------------- +SERVICE_A1_B1 = compose_service(DEVICE_A1_ENDPOINTS[2], DEVICE_B1_ENDPOINTS[2], constraints=[ + json_constraint('bandwidth[gbps]', 10.0), + json_constraint('latency[ms]', 5.0), +]) + +# ----- Containers ----------------------------------------------------------------------------------------------------- +CONTEXTS = [CONTEXT] +TOPOLOGIES = [TOPOLOGY_ADMIN, TOPOLOGY_A, TOPOLOGY_B, TOPOLOGY_C] +DEVICES = [ DEVICE_A1, DEVICE_A2, DEVICE_A3, + DEVICE_B1, DEVICE_B2, DEVICE_B3, + DEVICE_C1, DEVICE_C2, DEVICE_C3, ] +LINKS = [ LINK_A2_C3, LINK_C1_B2, + LINK_A1_A2, LINK_A1_A3, LINK_A2_A3, + LINK_B1_B2, LINK_B1_B3, LINK_B2_B3, + LINK_C1_C2, LINK_C1_C3, LINK_C2_C3, ] +SERVICES = [SERVICE_A1_B1] diff --git a/src/pathcomp/tests/PrepareTestScenario.py b/src/pathcomp/tests/PrepareTestScenario.py new file mode 100644 index 0000000000000000000000000000000000000000..a4efcbdbfc0d311dfb120ab8124a9d2268660daf --- /dev/null +++ b/src/pathcomp/tests/PrepareTestScenario.py @@ -0,0 +1,65 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +import pytest, os +from common.Constants import ServiceNameEnum +from common.Settings import ( + ENVVAR_SUFIX_SERVICE_HOST, ENVVAR_SUFIX_SERVICE_PORT_GRPC, get_env_var_name, get_service_port_grpc) +from context.client.ContextClient import ContextClient +from device.client.DeviceClient import DeviceClient +from pathcomp.client.PathCompClient import PathCompClient +from pathcomp.service.PathCompService import PathCompService +from pathcomp.tests.MockService_Dependencies import MockService_Dependencies + +LOCAL_HOST = '127.0.0.1' +MOCKSERVICE_PORT = 10000 +PATHCOMP_SERVICE_PORT = MOCKSERVICE_PORT + get_service_port_grpc(ServiceNameEnum.PATHCOMP) # avoid privileged ports +os.environ[get_env_var_name(ServiceNameEnum.PATHCOMP, ENVVAR_SUFIX_SERVICE_HOST )] = str(LOCAL_HOST) +os.environ[get_env_var_name(ServiceNameEnum.PATHCOMP, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(PATHCOMP_SERVICE_PORT) + +@pytest.fixture(scope='session') +def mock_service(): + _service = MockService_Dependencies(MOCKSERVICE_PORT) + _service.configure_env_vars() + _service.start() + yield _service + _service.stop() + +@pytest.fixture(scope='session') +def context_client(mock_service : MockService_Dependencies): # pylint: disable=redefined-outer-name + _client = ContextClient() + yield _client + _client.close() + +@pytest.fixture(scope='session') +def device_client(mock_service : MockService_Dependencies): # pylint: disable=redefined-outer-name + _client = DeviceClient() + yield _client + _client.close() + +@pytest.fixture(scope='session') +def pathcomp_service( + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient): # pylint: disable=redefined-outer-name + + _service = PathCompService() + _service.start() + yield _service + _service.stop() + +@pytest.fixture(scope='session') +def pathcomp_client(pathcomp_service : PathCompService): # pylint: disable=redefined-outer-name + _client = PathCompClient() + yield _client + _client.close() diff --git a/src/pathcomp/tests/__init__.py b/src/pathcomp/tests/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..70a33251242c51f49140e596b8208a19dd5245f7 --- /dev/null +++ b/src/pathcomp/tests/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + diff --git a/src/pathcomp/tests/test_unitary.py b/src/pathcomp/tests/test_unitary.py new file mode 100644 index 0000000000000000000000000000000000000000..9e2dd8bbcc639e006a00ba96cd405570c7f66d16 --- /dev/null +++ b/src/pathcomp/tests/test_unitary.py @@ -0,0 +1,95 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +import logging +from common.tools.grpc.Tools import grpc_message_to_json, grpc_message_to_json_string +from context.client.ContextClient import ContextClient +from context.proto.context_pb2 import Context, ContextId, DeviceId, Link, LinkId, Topology, Device, TopologyId +from device.client.DeviceClient import DeviceClient +from pathcomp.client.PathCompClient import PathCompClient +from pathcomp.proto.pathcomp_pb2 import PathCompRequest +from .PrepareTestScenario import ( # pylint: disable=unused-import + # be careful, order of symbols is important here! + mock_service, pathcomp_service, context_client, device_client, pathcomp_client) +from .Objects import CONTEXTS, DEVICES, LINKS, SERVICES, TOPOLOGIES + +LOGGER = logging.getLogger(__name__) +LOGGER.setLevel(logging.DEBUG) + + +def test_prepare_environment( + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient): # pylint: disable=redefined-outer-name + + for context in CONTEXTS : context_client.SetContext (Context (**context )) + for topology in TOPOLOGIES: context_client.SetTopology(Topology(**topology)) + for device in DEVICES : device_client .AddDevice (Device (**device )) + for link in LINKS : context_client.SetLink (Link (**link )) + + +def test_request_service( + pathcomp_client : PathCompClient): # pylint: disable=redefined-outer-name + + request_services = SERVICES + pathcomp_request = PathCompRequest(services=request_services) + pathcomp_reply = pathcomp_client.Compute(pathcomp_request) + pathcomp_reply = grpc_message_to_json(pathcomp_reply) + reply_services = pathcomp_reply['services'] + reply_connections = pathcomp_reply['connections'] + assert len(request_services) <= len(reply_services) + request_service_ids = { + '{:s}/{:s}'.format( + svc['service_id']['context_id']['context_uuid']['uuid'], + svc['service_id']['service_uuid']['uuid'] + ) + for svc in request_services + } + reply_service_ids = { + '{:s}/{:s}'.format( + svc['service_id']['context_id']['context_uuid']['uuid'], + svc['service_id']['service_uuid']['uuid'] + ) + for svc in reply_services + } + # Assert all requested services have a reply + # It permits having other services not requested (i.e., sub-services) + assert len(request_service_ids.difference(reply_service_ids)) == 0 + + reply_connection_service_ids = { + '{:s}/{:s}'.format( + conn['service_id']['context_id']['context_uuid']['uuid'], + conn['service_id']['service_uuid']['uuid'] + ) + for conn in reply_connections + } + # Assert all requested services have a connection associated + # It permits having other connections not requested (i.e., connections for sub-services) + assert len(request_service_ids.difference(reply_connection_service_ids)) == 0 + + # TODO: implement other checks. examples: + # - request service and reply service endpoints match + # - request service and reply connection endpoints match + # - reply sub-service and reply sub-connection endpoints match + # - others? + #for json_service,json_connection in zip(json_services, json_connections): + + +def test_cleanup_environment( + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient): # pylint: disable=redefined-outer-name + + for link in LINKS : context_client.RemoveLink (LinkId (**link ['link_id' ])) + for device in DEVICES : device_client .DeleteDevice (DeviceId (**device ['device_id' ])) + for topology in TOPOLOGIES: context_client.RemoveTopology(TopologyId(**topology['topology_id'])) + for context in CONTEXTS : context_client.RemoveContext (ContextId (**context ['context_id' ])) diff --git a/src/policy/pom.xml b/src/policy/pom.xml index 6233d3edb8b1e66ef0e9dce27dfca0eb08359399..6b1d35bbe10b281b33dc8a0d6ec5900abae15c06 100644 --- a/src/policy/pom.xml +++ b/src/policy/pom.xml @@ -140,6 +140,12 @@ <artifactId>quarkus-arc</artifactId> </dependency> + <dependency> + <groupId>com.google.guava</groupId> + <artifactId>guava</artifactId> + <version>31.1-jre</version> + </dependency> + <dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-config-yaml</artifactId> diff --git a/src/policy/src/main/docker/Dockerfile.multistage.jvm b/src/policy/src/main/docker/Dockerfile.multistage.jvm index e153b7d84c21a89276d2d3622ead316508b22cef..38920f65e01d8e466aed83bb5d55750253eb96f2 100644 --- a/src/policy/src/main/docker/Dockerfile.multistage.jvm +++ b/src/policy/src/main/docker/Dockerfile.multistage.jvm @@ -60,7 +60,7 @@ COPY --from=builder --chown=1001 /app/target/quarkus-app/app/ /deployments/app/ COPY --from=builder --chown=1001 /app/target/quarkus-app/quarkus/ /deployments/quarkus/ EXPOSE 8080 -EXPOSE 9999 +EXPOSE 6060 USER 1001 ENTRYPOINT [ "/deployments/run-java.sh" ] diff --git a/src/policy/src/main/java/eu/teraflow/policy/PolicyGatewayImpl.java b/src/policy/src/main/java/eu/teraflow/policy/PolicyGatewayImpl.java index b95271708bf66833e09d9eed97b0b24ecfe09552..642fabcba92c82cab8cc0c43dca805aa95231df6 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/PolicyGatewayImpl.java +++ b/src/policy/src/main/java/eu/teraflow/policy/PolicyGatewayImpl.java @@ -16,11 +16,18 @@ package eu.teraflow.policy; -import context.ContextOuterClass; +import context.ContextOuterClass.ServiceId; import io.quarkus.grpc.GrpcService; import io.smallrye.mutiny.Uni; import javax.inject.Inject; import policy.Policy; +import policy.Policy.PolicyRuleBasic; +import policy.Policy.PolicyRuleDevice; +import policy.Policy.PolicyRuleId; +import policy.Policy.PolicyRuleService; +import policy.Policy.PolicyRuleServiceList; +import policy.Policy.PolicyRuleState; +import policy.Policy.RuleState; @GrpcService public class PolicyGatewayImpl implements PolicyGateway { @@ -33,50 +40,77 @@ public class PolicyGatewayImpl implements PolicyGateway { } @Override - public Uni<Policy.PolicyRuleState> policyAdd(Policy.PolicyRule request) { + public Uni<PolicyRuleState> policyAddService(PolicyRuleService request) { return Uni.createFrom() .item( () -> Policy.PolicyRuleState.newBuilder() - .setPolicyRuleId(request.getPolicyRuleId().getUuid()) + .setPolicyRuleState( + request.getPolicyRuleBasic().getPolicyRuleState().getPolicyRuleState()) .build()); } @Override - public Uni<Policy.PolicyRuleState> policyUpdate(Policy.PolicyRule request) { + public Uni<PolicyRuleState> policyAddDevice(PolicyRuleDevice request) { return Uni.createFrom() .item( () -> Policy.PolicyRuleState.newBuilder() - .setPolicyRuleId(request.getPolicyRuleId().getUuid()) + .setPolicyRuleState( + request.getPolicyRuleBasic().getPolicyRuleState().getPolicyRuleState()) .build()); } @Override - public Uni<Policy.PolicyRuleState> policyDelete(Policy.PolicyRule request) { + public Uni<PolicyRuleState> policyUpdateService(PolicyRuleService request) { return Uni.createFrom() .item( () -> Policy.PolicyRuleState.newBuilder() - .setPolicyRuleId(request.getPolicyRuleId().getUuid()) + .setPolicyRuleState( + request.getPolicyRuleBasic().getPolicyRuleState().getPolicyRuleState()) .build()); } @Override - public Uni<Policy.PolicyRule> getPolicy(Policy.PolicyRuleId request) { + public Uni<PolicyRuleState> policyUpdateDevice(PolicyRuleDevice request) { return Uni.createFrom() - .item(() -> Policy.PolicyRule.newBuilder().setPolicyRuleId(request).build()); + .item( + () -> + Policy.PolicyRuleState.newBuilder() + .setPolicyRuleState( + request.getPolicyRuleBasic().getPolicyRuleState().getPolicyRuleState()) + .build()); } @Override - public Uni<Policy.PolicyRuleList> getPolicyByDeviceId(ContextOuterClass.DeviceId request) { + public Uni<PolicyRuleState> policyDelete(PolicyRuleId request) { + return Uni.createFrom() + .item( + () -> + Policy.PolicyRuleState.newBuilder() + .setPolicyRuleState(RuleState.POLICY_REMOVED) + .build()); + } + + @Override + public Uni<PolicyRuleService> getPolicyService(PolicyRuleId request) { + final var policyRuleBasic = PolicyRuleBasic.newBuilder().setPolicyRuleId(request).build(); - return Uni.createFrom().item(() -> Policy.PolicyRuleList.newBuilder().build()); + return Uni.createFrom() + .item(() -> PolicyRuleService.newBuilder().setPolicyRuleBasic(policyRuleBasic).build()); } @Override - public Uni<Policy.PolicyRuleList> getPolicyByServiceId(ContextOuterClass.ServiceId request) { + public Uni<PolicyRuleDevice> getPolicyDevice(PolicyRuleId request) { + final var policyRuleBasic = PolicyRuleBasic.newBuilder().setPolicyRuleId(request).build(); - return Uni.createFrom().item(() -> Policy.PolicyRuleList.newBuilder().build()); + return Uni.createFrom() + .item(() -> PolicyRuleDevice.newBuilder().setPolicyRuleBasic(policyRuleBasic).build()); + } + + @Override + public Uni<PolicyRuleServiceList> getPolicyByServiceId(ServiceId request) { + return Uni.createFrom().item(() -> Policy.PolicyRuleServiceList.newBuilder().build()); } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/PolicyService.java b/src/policy/src/main/java/eu/teraflow/policy/PolicyService.java index d20775cc137240611b665c08adeaa725e15ad35e..14ffbb41ef60a438990bfe59e1d9539b48b51d75 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/PolicyService.java +++ b/src/policy/src/main/java/eu/teraflow/policy/PolicyService.java @@ -16,11 +16,14 @@ package eu.teraflow.policy; -import eu.teraflow.policy.model.PolicyRule; import eu.teraflow.policy.model.PolicyRuleState; import io.smallrye.mutiny.Uni; +import policy.Policy.PolicyRuleDevice; +import policy.Policy.PolicyRuleService; public interface PolicyService { - Uni<PolicyRuleState> addPolicy(PolicyRule policyRule); + Uni<PolicyRuleState> addPolicyService(PolicyRuleService policyRuleService); + + Uni<PolicyRuleState> addPolicyDevice(PolicyRuleDevice policyRuleDevice); } diff --git a/src/policy/src/main/java/eu/teraflow/policy/PolicyServiceImpl.java b/src/policy/src/main/java/eu/teraflow/policy/PolicyServiceImpl.java index d8025d0809526934b4fa3959781ab88f5f10160a..c9645c5e30b1b4380bb9c0004a8b66f734f279d1 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/PolicyServiceImpl.java +++ b/src/policy/src/main/java/eu/teraflow/policy/PolicyServiceImpl.java @@ -16,19 +16,25 @@ package eu.teraflow.policy; -import eu.teraflow.policy.model.PolicyRule; import eu.teraflow.policy.model.PolicyRuleState; import io.smallrye.mutiny.Uni; import javax.enterprise.context.ApplicationScoped; import org.jboss.logging.Logger; +import policy.Policy.PolicyRuleDevice; +import policy.Policy.PolicyRuleService; @ApplicationScoped public class PolicyServiceImpl implements PolicyService { private static final Logger LOGGER = Logger.getLogger(PolicyServiceImpl.class); - public Uni<PolicyRuleState> addPolicy(PolicyRule policyRule) { + @Override + public Uni<PolicyRuleState> addPolicyService(PolicyRuleService policyRuleService) { + return null; + } + @Override + public Uni<PolicyRuleState> addPolicyDevice(PolicyRuleDevice policyRuleDevice) { return null; } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/common/Util.java b/src/policy/src/main/java/eu/teraflow/policy/common/Util.java new file mode 100644 index 0000000000000000000000000000000000000000..2fe37e47e806de047d53241bddead5b686bc5329 --- /dev/null +++ b/src/policy/src/main/java/eu/teraflow/policy/common/Util.java @@ -0,0 +1,13 @@ +package eu.teraflow.policy.common; + +import java.util.List; +import java.util.stream.Collectors; + +public class Util { + + private Util() {} + + public static <T> String toString(List<T> list) { + return list.stream().map(T::toString).collect(Collectors.joining(", ")); + } +} diff --git a/src/policy/src/main/java/eu/teraflow/policy/context/model/Service.java b/src/policy/src/main/java/eu/teraflow/policy/context/model/Service.java index 5441a8cb0439ef6342cd805114ebb1aada27cd42..bbe684e1c79b67559ad0aa1e97059ef2852bbecf 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/context/model/Service.java +++ b/src/policy/src/main/java/eu/teraflow/policy/context/model/Service.java @@ -16,8 +16,8 @@ package eu.teraflow.policy.context.model; +import eu.teraflow.policy.common.Util; import java.util.List; -import java.util.stream.Collectors; public class Service { @@ -74,13 +74,9 @@ public class Service { getClass().getSimpleName(), serviceId, serviceType.toString(), - toString(serviceEndPointIds), - toString(serviceConstraints), + Util.toString(serviceEndPointIds), + Util.toString(serviceConstraints), serviceStatus, serviceConfig); } - - private <T> String toString(List<T> list) { - return list.stream().map(T::toString).collect(Collectors.joining(", ")); - } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceConfig.java b/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceConfig.java index 22c8b3cb6674d4fa7647babb5e2ef8256bd8bd6c..e2e9c8e242f56602030e809de6edce67ee524281 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceConfig.java +++ b/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceConfig.java @@ -16,8 +16,8 @@ package eu.teraflow.policy.context.model; +import eu.teraflow.policy.common.Util; import java.util.List; -import java.util.stream.Collectors; public class ServiceConfig { @@ -33,11 +33,6 @@ public class ServiceConfig { @Override public String toString() { - return String.format( - "%s:{configRules:[%s]}", getClass().getSimpleName(), toString(configRules)); - } - - private <T> String toString(List<T> list) { - return list.stream().map(T::toString).collect(Collectors.joining(", ")); + return String.format("%s:{[%s]}", getClass().getSimpleName(), Util.toString(configRules)); } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatus.java b/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatus.java index b5466d1f3e3f645584df434d3076fe43f19ed823..e936f635c8f259d450b77588025e0b68e1ef7799 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatus.java +++ b/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatus.java @@ -30,6 +30,7 @@ public class ServiceStatus { @Override public String toString() { - return String.format("%s:{serviceStatus:\"%s\"}", getClass().getSimpleName(), status); + return String.format( + "%s:{serviceStatus:\"%s\"}", getClass().getSimpleName(), status.toString()); } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/BooleanOperator.java b/src/policy/src/main/java/eu/teraflow/policy/model/BooleanOperator.java index 4de1743d0178d5f61737a2830b49370068156c8f..7231c02e5895ba08379abe39454259b79e1cc90a 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/model/BooleanOperator.java +++ b/src/policy/src/main/java/eu/teraflow/policy/model/BooleanOperator.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.model; public enum BooleanOperator { diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/NumericalOperator.java b/src/policy/src/main/java/eu/teraflow/policy/model/NumericalOperator.java index ccd424a02ba771edc215ee92e7bfc0125a5b5c27..48029e550acf53f7b23816e3b2c409701ce03f30 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/model/NumericalOperator.java +++ b/src/policy/src/main/java/eu/teraflow/policy/model/NumericalOperator.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.model; public enum NumericalOperator { diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleActionEnum.java b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleActionEnum.java index 317daa02939bfe21c267b758999bae9d20f294af..7d9354a05ff42b556caefdcf635234d706da8352 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleActionEnum.java +++ b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleActionEnum.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.model; public enum PolicyRuleActionEnum { diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRule.java b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleBasic.java similarity index 56% rename from src/policy/src/main/java/eu/teraflow/policy/model/PolicyRule.java rename to src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleBasic.java index 18dbfa73d396770e71f0e1c864e2440f10b28a55..b32d3cf3008611ea67aee53f5234f1e45b98be8c 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRule.java +++ b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleBasic.java @@ -16,59 +16,58 @@ package eu.teraflow.policy.model; -import eu.teraflow.policy.context.model.ServiceId; +import static com.google.common.base.Preconditions.checkArgument; +import static com.google.common.base.Preconditions.checkNotNull; + +import eu.teraflow.policy.common.Util; import java.util.List; -import java.util.stream.Collectors; -public class PolicyRule { +public class PolicyRuleBasic { private final String policyRuleId; - private final PolicyRuleType policyRuleType; + private final PolicyRuleState policyRuleState; private final int priority; - private final PolicyRuleEvent event; private final List<PolicyRuleCondition> policyRuleConditions; private final BooleanOperator booleanOperator; private final List<PolicyRuleAction> policyRuleActions; - private final ServiceId serviceId; - private final List<String> deviceIds; - public PolicyRule( + public PolicyRuleBasic( String policyRuleId, - PolicyRuleType policyRuleType, + PolicyRuleState policyRuleState, int priority, - PolicyRuleEvent event, List<PolicyRuleCondition> policyRuleConditions, BooleanOperator booleanOperator, - List<PolicyRuleAction> policyRuleActions, - ServiceId serviceId, - List<String> deviceIds) { + List<PolicyRuleAction> policyRuleActions) { + checkNotNull(policyRuleId, "Policy rule ID must not be null."); + checkArgument(!policyRuleId.isBlank(), "Policy rule ID must not be empty."); this.policyRuleId = policyRuleId; - this.policyRuleType = policyRuleType; + this.policyRuleState = policyRuleState; + checkArgument(priority >= 0, "Priority value must be greater or equal than zero."); this.priority = priority; - this.event = event; + checkNotNull(policyRuleConditions, "Policy Rule conditions cannot be null."); + checkArgument(!policyRuleConditions.isEmpty(), "Policy Rule conditions cannot be empty."); this.policyRuleConditions = policyRuleConditions; + checkArgument( + booleanOperator != BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_UNDEFINED, + "Boolean operator cannot be undefined"); this.booleanOperator = booleanOperator; + checkNotNull(policyRuleActions, "Policy Rule actions cannot be null."); + checkArgument(!policyRuleActions.isEmpty(), "Policy Rule actions cannot be empty."); this.policyRuleActions = policyRuleActions; - this.serviceId = serviceId; - this.deviceIds = deviceIds; } public String getPolicyRuleId() { return policyRuleId; } - public PolicyRuleType getPolicyRuleType() { - return policyRuleType; + public PolicyRuleState getPolicyRuleState() { + return policyRuleState; } public int getPriority() { return priority; } - public PolicyRuleEvent getEvent() { - return event; - } - public List<PolicyRuleCondition> getPolicyRuleConditions() { return policyRuleConditions; } @@ -81,31 +80,16 @@ public class PolicyRule { return policyRuleActions; } - public ServiceId getServiceId() { - return serviceId; - } - - public List<String> getDeviceIds() { - return deviceIds; - } - @Override public String toString() { return String.format( - "%s:{policyRuleId:\"%s\", policyRuleType:\"%s\", priority:%d, %s, [%s], booleanOperator:\"%s\", [%s], %s, [%s]}", + "%s:{policyRuleId:\"%s\", %s, priority:%d, [%s], booleanOperator:\"%s\", [%s]}", getClass().getSimpleName(), policyRuleId, - policyRuleType.toString(), + policyRuleState, priority, - event, - toString(policyRuleConditions), + Util.toString(policyRuleConditions), booleanOperator.toString(), - toString(policyRuleActions), - serviceId, - toString(deviceIds)); - } - - private <T> String toString(List<T> list) { - return list.stream().map(T::toString).collect(Collectors.joining(", ")); + Util.toString(policyRuleActions)); } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleEvent.java b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleDevice.java similarity index 52% rename from src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleEvent.java rename to src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleDevice.java index 412c6c7183250aae26de75a945bf57164634bc32..46151ea5c50f5b2f1b6542098594813e5cbc2a50 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleEvent.java +++ b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleDevice.java @@ -16,22 +16,30 @@ package eu.teraflow.policy.model; -import eu.teraflow.policy.context.model.Event; +import eu.teraflow.policy.common.Util; +import java.util.List; -public class PolicyRuleEvent { +public class PolicyRuleDevice { - private final Event event; + private final PolicyRuleBasic policyRuleBasic; + private final List<String> deviceIds; - public PolicyRuleEvent(Event event) { - this.event = event; + public PolicyRuleDevice(PolicyRuleBasic policyRuleBasic, List<String> deviceIds) { + this.policyRuleBasic = policyRuleBasic; + this.deviceIds = deviceIds; } - public Event getEvent() { - return event; + public PolicyRuleBasic getPolicyRuleBasic() { + return policyRuleBasic; + } + + public List<String> getDeviceIds() { + return deviceIds; } @Override public String toString() { - return String.format("%s:{%s}", getClass().getSimpleName(), event); + return String.format( + "%s:{%s, [%s]}", getClass().getSimpleName(), policyRuleBasic, Util.toString(deviceIds)); } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleService.java b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleService.java new file mode 100644 index 0000000000000000000000000000000000000000..ac0710d8590153ef8df1e9dbeb6465eac88c3fa1 --- /dev/null +++ b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleService.java @@ -0,0 +1,54 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + +package eu.teraflow.policy.model; + +import eu.teraflow.policy.common.Util; +import eu.teraflow.policy.context.model.ServiceId; +import java.util.List; + +public class PolicyRuleService { + + private final PolicyRuleBasic policyRuleBasic; + private final ServiceId serviceId; + private final List<String> deviceIds; + + public PolicyRuleService( + PolicyRuleBasic policyRuleBasic, ServiceId serviceId, List<String> deviceIds) { + this.policyRuleBasic = policyRuleBasic; + this.serviceId = serviceId; + this.deviceIds = deviceIds; + } + + public PolicyRuleBasic getPolicyRuleBasic() { + return policyRuleBasic; + } + + public ServiceId getServiceId() { + return serviceId; + } + + public List<String> getDeviceIds() { + return deviceIds; + } + + @Override + public String toString() { + return String.format( + "%s:{%s, %s, [%s]}", + getClass().getSimpleName(), policyRuleBasic, serviceId, Util.toString(deviceIds)); + } +} diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleState.java b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleState.java index 38ee0a73b187420cfdd3f0bd7527d5196d7bad9f..566c3b785c05ed52060e907b7950dfa56b3452de 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleState.java +++ b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleState.java @@ -18,26 +18,18 @@ package eu.teraflow.policy.model; public class PolicyRuleState { - private final String policeRuleId; private final RuleState ruleState; - public PolicyRuleState(String policeRuleId, RuleState ruleState) { - this.policeRuleId = policeRuleId; + public PolicyRuleState(RuleState ruleState) { this.ruleState = ruleState; } - public String getPolicyRuleId() { - return policeRuleId; - } - public RuleState getRuleState() { return ruleState; } @Override public String toString() { - return String.format( - "%s:{policeRuleId:\"%s\", ruleState:\"%s\"}", - getClass().getSimpleName(), policeRuleId, ruleState); + return String.format("%s:{ruleState:\"%s\"}", getClass().getSimpleName(), ruleState.toString()); } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleType.java b/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleType.java deleted file mode 100644 index 321220176adb7a336870b4845d3883e367c12078..0000000000000000000000000000000000000000 --- a/src/policy/src/main/java/eu/teraflow/policy/model/PolicyRuleType.java +++ /dev/null @@ -1,22 +0,0 @@ -/* -* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) -* -* Licensed 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. -*/ - -package eu.teraflow.policy.model; - -public enum PolicyRuleType { - POLICYTYPE_DEVICE, - POLICYTYPE_NETWORK -} diff --git a/src/policy/src/main/java/eu/teraflow/policy/model/RuleState.java b/src/policy/src/main/java/eu/teraflow/policy/model/RuleState.java index 6c8aabdb04399176714f06e85b1a00d18e6e867d..2d01a6b94004158b6e2a4d06fead888ad54b76b1 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/model/RuleState.java +++ b/src/policy/src/main/java/eu/teraflow/policy/model/RuleState.java @@ -17,7 +17,15 @@ package eu.teraflow.policy.model; public enum RuleState { - POLICY_INACTIVE, - POLICY_PLANNED, - POLICY_ACTIVE + POLICY_UNDEFINED, + POLICY_FAILED, + POLICY_INSERTED, + POLICY_VALIDATED, + POLICY_PROVISIONED, + POLICY_ACTIVE, + POLICY_ENFORCED, + POLICY_INEFFECTIVE, + POLICY_EFFECTIVE, + POLICY_UPDATED, + POLICY_REMOVED } diff --git a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/BooleanKpiValue.java b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/BooleanKpiValue.java index aa2fe96cd4fdd96ea854de03bf7aea794fe4de00..07152f0e3d5cc0194a878e2c43639cfcfc120f2f 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/BooleanKpiValue.java +++ b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/BooleanKpiValue.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.monitoring.model; public class BooleanKpiValue implements KpiValue<Boolean> { diff --git a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/FloatKpiValue.java b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/FloatKpiValue.java index d183c9c756f678a08c12669b27e46797eb745b51..93ffdf4fda7b29041991791bf231b10326574e95 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/FloatKpiValue.java +++ b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/FloatKpiValue.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.monitoring.model; public class FloatKpiValue implements KpiValue<Float> { diff --git a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/IntegerKpiValue.java b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/IntegerKpiValue.java index b7048b188687657d3c6253d71cce32add4b80306..2161084d0fc722843cc20f928c24d9becc7f2a23 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/IntegerKpiValue.java +++ b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/IntegerKpiValue.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.monitoring.model; public class IntegerKpiValue implements KpiValue<Integer> { diff --git a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/KpiValue.java b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/KpiValue.java index 4313c82698086dcf7b755ca522fbc6f952233423..5c3c4c3906dead563d19657c5a6da126e2aeb698 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/KpiValue.java +++ b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/KpiValue.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.monitoring.model; public interface KpiValue<T> { diff --git a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/StringKpiValue.java b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/StringKpiValue.java index fade272217208a44f70e0031fbf7c3bc54f1e196..52f26356fce02138f91e1bd4a889571a5d1a6e0c 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/StringKpiValue.java +++ b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/StringKpiValue.java @@ -1,3 +1,19 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + package eu.teraflow.policy.monitoring.model; public class StringKpiValue implements KpiValue<String> { diff --git a/src/policy/src/main/resources/application.yml b/src/policy/src/main/resources/application.yml index 2e09b2302d0311d06a36f3ee262e2a7a900c1ddc..3d992763422c9044136c38f21cf6d609281f86ca 100644 --- a/src/policy/src/main/resources/application.yml +++ b/src/policy/src/main/resources/application.yml @@ -17,8 +17,19 @@ quarkus: path: teraflow-policy-banner.txt grpc: server: - port: 9999 + port: 6060 enable-reflection-service: true + clients: + context: + host: ${quarkus.kubernetes.env.vars.context-service-host} + port: 1010 + monitoring: + host: ${quarkus.kubernetes.env.vars.monitoring-service-host} + port: 7070 + service: + host: ${quarkus.kubernetes.env.vars.service-service-host} + port: 3030 + http: port: 8080 @@ -43,6 +54,12 @@ quarkus: http: host-port: 8080 container-port: 8080 - grpc-server: - host-port: 9999 - container-port: 9999 + grpc: + host-port: 6060 + container-port: 6060 + env: + vars: + context-service-host: "contextservice" + monitoring-service-host: "monitoringservice" + service-service-host: "serviceservice" + diff --git a/src/policy/src/test/java/eu/teraflow/policy/PolicyRuleBasicValidationTest.java b/src/policy/src/test/java/eu/teraflow/policy/PolicyRuleBasicValidationTest.java new file mode 100644 index 0000000000000000000000000000000000000000..955ad2a62255155bee0ec7f8aa171d91410d8519 --- /dev/null +++ b/src/policy/src/test/java/eu/teraflow/policy/PolicyRuleBasicValidationTest.java @@ -0,0 +1,359 @@ +/* +* Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +* +* Licensed 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. +*/ + +package eu.teraflow.policy; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatExceptionOfType; + +import eu.teraflow.policy.model.BooleanOperator; +import eu.teraflow.policy.model.NumericalOperator; +import eu.teraflow.policy.model.PolicyRuleAction; +import eu.teraflow.policy.model.PolicyRuleActionEnum; +import eu.teraflow.policy.model.PolicyRuleBasic; +import eu.teraflow.policy.model.PolicyRuleCondition; +import eu.teraflow.policy.model.PolicyRuleState; +import eu.teraflow.policy.model.RuleState; +import eu.teraflow.policy.monitoring.model.IntegerKpiValue; +import eu.teraflow.policy.monitoring.model.KpiValue; +import io.quarkus.test.junit.QuarkusTest; +import java.util.Collections; +import java.util.List; +import java.util.UUID; +import org.junit.jupiter.api.Test; + +@QuarkusTest +class PolicyRuleBasicValidationTest { + + private PolicyRuleBasic createPolicyRuleBasic( + String policyRuleId, + int priority, + PolicyRuleState policyRuleState, + BooleanOperator booleanOperator, + List<PolicyRuleCondition> policyRuleConditions, + List<PolicyRuleAction> policyRuleActions) { + + return new PolicyRuleBasic( + policyRuleId, + policyRuleState, + priority, + policyRuleConditions, + booleanOperator, + policyRuleActions); + } + + private List<PolicyRuleCondition> createPolicyRuleConditions( + String kpiId, NumericalOperator numericalOperator, KpiValue kpiValue) { + final var policyRuleCondition = new PolicyRuleCondition(kpiId, numericalOperator, kpiValue); + + return List.of(policyRuleCondition); + } + + private List<PolicyRuleAction> createPolicyRuleActions( + PolicyRuleActionEnum policyRuleActionEnum, List<String> parameters) { + final var policyRuleAction = new PolicyRuleAction(policyRuleActionEnum, parameters); + + return List.of(policyRuleAction); + } + + @Test + void shouldThrowIllegalArgumentExceptionGivenNullPolicyRuleId() { + final var policyRuleConditions = + createPolicyRuleConditions( + UUID.randomUUID().toString(), + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_LESS_THAN, + new IntegerKpiValue(3)); + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_ADD_SERVICE_CONSTRAINT, + List.of(UUID.randomUUID().toString(), UUID.randomUUID().toString())); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_EFFECTIVE); + + assertThatExceptionOfType(NullPointerException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + null, + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + policyRuleActions)); + } + + @Test + void shouldThrowIllegalArgumentExceptionGivenEmptyPolicyRuleId() { + final var policyRuleConditions = + createPolicyRuleConditions( + UUID.randomUUID().toString(), + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN, + new IntegerKpiValue(3)); + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE, + List.of(UUID.randomUUID().toString(), UUID.randomUUID().toString())); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_ENFORCED); + + assertThatExceptionOfType(IllegalArgumentException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + "", + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + policyRuleActions)); + } + + @Test + void shouldThrowIllegalArgumentExceptionGivenWhiteSpacedPolicyRuleId() { + final var policyRuleConditions = + createPolicyRuleConditions( + UUID.randomUUID().toString(), + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_NOT_EQUAL, + new IntegerKpiValue(3)); + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_NO_ACTION, + List.of(UUID.randomUUID().toString(), UUID.randomUUID().toString())); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_ENFORCED); + + assertThatExceptionOfType(IllegalArgumentException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + " ", + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + policyRuleActions)); + } + + @Test + void shouldThrowIllegalArgumentExceptionGivenNegativePriority() { + final var policyRuleConditions = + createPolicyRuleConditions( + UUID.randomUUID().toString(), + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN_EQUAL, + new IntegerKpiValue(3)); + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_SET_DEVICE_STATUS, + List.of(UUID.randomUUID().toString(), UUID.randomUUID().toString())); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_INSERTED); + + final var policyRuleId = UUID.randomUUID().toString(); + + assertThatExceptionOfType(IllegalArgumentException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + policyRuleId, + -3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + policyRuleActions)); + } + + @Test + void shouldThrowNullPointerExceptionGivenNullPolicyRuleConditions() { + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE, + List.of(UUID.randomUUID().toString(), UUID.randomUUID().toString())); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_ENFORCED); + + final var policyRuleId = UUID.randomUUID().toString(); + + assertThatExceptionOfType(NullPointerException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + policyRuleId, + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + null, + policyRuleActions)); + } + + @Test + void shouldThrowIllegalArgumentExceptionGivenEmptyPolicyRuleConditions() { + final var policyRuleConditions = Collections.<PolicyRuleCondition>emptyList(); + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE, + List.of(UUID.randomUUID().toString(), UUID.randomUUID().toString())); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_REMOVED); + + final var policyRuleId = UUID.randomUUID().toString(); + + assertThatExceptionOfType(IllegalArgumentException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + policyRuleId, + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + policyRuleActions)); + } + + @Test + void shouldThrowIllegalArgumentExceptionGivenUndefinedBooleanOperator() { + final var policyRuleConditions = + createPolicyRuleConditions( + UUID.randomUUID().toString(), + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN, + new IntegerKpiValue(3)); + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE, + List.of(UUID.randomUUID().toString(), UUID.randomUUID().toString())); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_VALIDATED); + + final var policyRuleId = UUID.randomUUID().toString(); + + assertThatExceptionOfType(IllegalArgumentException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + policyRuleId, + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_UNDEFINED, + policyRuleConditions, + policyRuleActions)); + } + + @Test + void shouldThrowNullPointerExceptionGivenNullPolicyRuleActions() { + final var policyRuleConditions = + createPolicyRuleConditions( + UUID.randomUUID().toString(), + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN, + new IntegerKpiValue(3)); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_PROVISIONED); + + final var policyRuleId = UUID.randomUUID().toString(); + + assertThatExceptionOfType(NullPointerException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + policyRuleId, + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + null)); + } + + @Test + void shouldThrowIllegalArgumentExceptionGivenEmptyPolicyPolicyRuleActions() { + final var policyRuleConditions = + createPolicyRuleConditions( + UUID.randomUUID().toString(), + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN, + new IntegerKpiValue(3)); + final var policyRuleActions = Collections.<PolicyRuleAction>emptyList(); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_FAILED); + + final var policyRuleId = UUID.randomUUID().toString(); + + assertThatExceptionOfType(IllegalArgumentException.class) + .isThrownBy( + () -> + createPolicyRuleBasic( + policyRuleId, + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + policyRuleActions)); + } + + @Test + void shouldCreatePolicyRuleBasicObject() { + final var expectedPolicyRuleId = "expectedPolicyRuleId"; + final var expectedPolicyRuleState = new PolicyRuleState(RuleState.POLICY_EFFECTIVE); + final var expectedPriority = 3; + + final var firstKpiValue = new IntegerKpiValue(22); + + final var firstExpectedPolicyRuleCondition = + new PolicyRuleCondition( + "firstExpectedPolicyRuleConditionVariable", + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN, + firstKpiValue); + + final var expectedPolicyRuleConditions = List.of(firstExpectedPolicyRuleCondition); + + final var expectedBooleanOperator = BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR; + + final var firstExpectedPolicyRuleAction = + new PolicyRuleAction( + PolicyRuleActionEnum.POLICY_RULE_ACTION_SET_DEVICE_STATUS, + List.of("parameter1", "parameter2")); + + final var expectedPolicyRuleActions = List.of(firstExpectedPolicyRuleAction); + + final var expectedPolicyRuleBasic = + new PolicyRuleBasic( + expectedPolicyRuleId, + expectedPolicyRuleState, + expectedPriority, + expectedPolicyRuleConditions, + expectedBooleanOperator, + expectedPolicyRuleActions); + + final var policyRuleConditions = + createPolicyRuleConditions( + "firstExpectedPolicyRuleConditionVariable", + NumericalOperator.POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN, + new IntegerKpiValue(22)); + final var policyRuleActions = + createPolicyRuleActions( + PolicyRuleActionEnum.POLICY_RULE_ACTION_SET_DEVICE_STATUS, + List.of("parameter1", "parameter2")); + + final var policyRuleState = new PolicyRuleState(RuleState.POLICY_EFFECTIVE); + + final var policyRuleBasic = + createPolicyRuleBasic( + "expectedPolicyRuleId", + 3, + policyRuleState, + BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_OR, + policyRuleConditions, + policyRuleActions); + + assertThat(policyRuleBasic).usingRecursiveComparison().isEqualTo(expectedPolicyRuleBasic); + } +} diff --git a/src/policy/src/test/java/eu/teraflow/policy/PolicyServiceTest.java b/src/policy/src/test/java/eu/teraflow/policy/PolicyServiceTest.java index 47a5502d15bb06c5851a01693e469a9c88588bfe..bf1af532f06accf9c0410548ad7f4aa85757dbb1 100644 --- a/src/policy/src/test/java/eu/teraflow/policy/PolicyServiceTest.java +++ b/src/policy/src/test/java/eu/teraflow/policy/PolicyServiceTest.java @@ -29,6 +29,8 @@ import java.util.concurrent.TimeoutException; import org.jboss.logging.Logger; import org.junit.jupiter.api.Test; import policy.Policy; +import policy.Policy.PolicyRuleBasic; +import policy.Policy.RuleState; import policy.PolicyService; @QuarkusTest @@ -38,47 +40,89 @@ class PolicyServiceTest { @GrpcClient PolicyService client; @Test - void shouldAddPolicy() throws ExecutionException, InterruptedException, TimeoutException { + void shouldAddPolicyService() throws ExecutionException, InterruptedException, TimeoutException { CompletableFuture<String> message = new CompletableFuture<>(); - final var uuid = - ContextOuterClass.Uuid.newBuilder() - .setUuid(UUID.fromString("0f14d0ab-9608-7862-a9e4-5ed26688389b").toString()) - .build(); - final var policyRuleId = Policy.PolicyRuleId.newBuilder().setUuid(uuid).build(); - final var policyRule = Policy.PolicyRule.newBuilder().setPolicyRuleId(policyRuleId).build(); + final var expectedPolicyRuleState = + Policy.PolicyRuleState.newBuilder().setPolicyRuleState(RuleState.POLICY_ACTIVE).build(); + + final var policyRuleBasic = + PolicyRuleBasic.newBuilder().setPolicyRuleState(expectedPolicyRuleState).build(); + final var policyRuleService = + Policy.PolicyRuleService.newBuilder().setPolicyRuleBasic(policyRuleBasic).build(); client - .policyAdd(policyRule) + .policyAddService(policyRuleService) .subscribe() - .with( - policyRuleState -> { - LOGGER.infof("Adding policy: %s", policyRuleState.getPolicyRuleId().getUuid()); - message.complete(policyRuleState.getPolicyRuleId().getUuid()); - }); - assertThat(message.get(5, TimeUnit.SECONDS)).isEqualTo(policyRuleId.getUuid().getUuid()); + .with(policyRuleState -> message.complete(policyRuleState.getPolicyRuleState().toString())); + + assertThat(message.get(5, TimeUnit.SECONDS)) + .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); } @Test - void shouldUpdatePolicy() throws ExecutionException, InterruptedException, TimeoutException { + void shouldAddPolicyDevice() throws ExecutionException, InterruptedException, TimeoutException { CompletableFuture<String> message = new CompletableFuture<>(); - final var uuid = - ContextOuterClass.Uuid.newBuilder() - .setUuid(UUID.fromString("0f14d0ab-9608-7862-a9e4-5ed26688389b").toString()) - .build(); - final var policyRuleId = Policy.PolicyRuleId.newBuilder().setUuid(uuid).build(); - final var policyRule = Policy.PolicyRule.newBuilder().setPolicyRuleId(policyRuleId).build(); + final var expectedPolicyRuleState = + Policy.PolicyRuleState.newBuilder().setPolicyRuleState(RuleState.POLICY_EFFECTIVE).build(); + + final var policyRuleBasic = + PolicyRuleBasic.newBuilder().setPolicyRuleState(expectedPolicyRuleState).build(); + final var policyRuleDevice = + Policy.PolicyRuleDevice.newBuilder().setPolicyRuleBasic(policyRuleBasic).build(); client - .policyUpdate(policyRule) + .policyAddDevice(policyRuleDevice) .subscribe() - .with( - policyRuleState -> { - LOGGER.infof("Updating policy: %s", policyRuleState.getPolicyRuleId().getUuid()); - message.complete(policyRuleState.getPolicyRuleId().getUuid()); - }); - assertThat(message.get(5, TimeUnit.SECONDS)).isEqualTo(policyRuleId.getUuid().getUuid()); + .with(policyRuleState -> message.complete(policyRuleState.getPolicyRuleState().toString())); + + assertThat(message.get(5, TimeUnit.SECONDS)) + .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); + } + + @Test + void shouldUpdatePolicyService() + throws ExecutionException, InterruptedException, TimeoutException { + CompletableFuture<String> message = new CompletableFuture<>(); + + final var expectedPolicyRuleState = + Policy.PolicyRuleState.newBuilder().setPolicyRuleState(RuleState.POLICY_ENFORCED).build(); + + final var policyRuleBasic = + PolicyRuleBasic.newBuilder().setPolicyRuleState(expectedPolicyRuleState).build(); + final var policyRuleService = + Policy.PolicyRuleService.newBuilder().setPolicyRuleBasic(policyRuleBasic).build(); + + client + .policyUpdateService(policyRuleService) + .subscribe() + .with(policyRuleState -> message.complete(policyRuleState.getPolicyRuleState().toString())); + + assertThat(message.get(5, TimeUnit.SECONDS)) + .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); + } + + @Test + void shouldUpdatePolicyDevice() + throws ExecutionException, InterruptedException, TimeoutException { + CompletableFuture<String> message = new CompletableFuture<>(); + + final var expectedPolicyRuleState = + Policy.PolicyRuleState.newBuilder().setPolicyRuleState(RuleState.POLICY_ENFORCED).build(); + + final var policyRuleBasic = + PolicyRuleBasic.newBuilder().setPolicyRuleState(expectedPolicyRuleState).build(); + final var policyRuleDevice = + Policy.PolicyRuleDevice.newBuilder().setPolicyRuleBasic(policyRuleBasic).build(); + + client + .policyUpdateDevice(policyRuleDevice) + .subscribe() + .with(policyRuleState -> message.complete(policyRuleState.getPolicyRuleState().toString())); + + assertThat(message.get(5, TimeUnit.SECONDS)) + .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); } @Test @@ -90,21 +134,21 @@ class PolicyServiceTest { .setUuid(UUID.fromString("0f14d0ab-9608-7862-a9e4-5ed26688389b").toString()) .build(); final var policyRuleId = Policy.PolicyRuleId.newBuilder().setUuid(uuid).build(); - final var policyRule = Policy.PolicyRule.newBuilder().setPolicyRuleId(policyRuleId).build(); + + final var expectedPolicyRuleState = + Policy.PolicyRuleState.newBuilder().setPolicyRuleState(RuleState.POLICY_REMOVED).build(); client - .policyDelete(policyRule) + .policyDelete(policyRuleId) .subscribe() - .with( - policyRuleState -> { - LOGGER.infof("Deleting policy: %s", policyRuleState.getPolicyRuleId().getUuid()); - message.complete(policyRuleState.getPolicyRuleId().getUuid()); - }); - assertThat(message.get(5, TimeUnit.SECONDS)).isEqualTo(policyRuleId.getUuid().getUuid()); + .with(policyRuleState -> message.complete(policyRuleState.getPolicyRuleState().toString())); + + assertThat(message.get(5, TimeUnit.SECONDS)) + .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); } @Test - void shouldGetPolicy() throws ExecutionException, InterruptedException, TimeoutException { + void shouldGetPolicyService() throws ExecutionException, InterruptedException, TimeoutException { CompletableFuture<String> message = new CompletableFuture<>(); final var uuid = @@ -114,40 +158,43 @@ class PolicyServiceTest { final var policyRuleId = Policy.PolicyRuleId.newBuilder().setUuid(uuid).build(); client - .getPolicy(policyRuleId) + .getPolicyService(policyRuleId) .subscribe() .with( - policyRuleState -> { + policyRuleService -> { LOGGER.infof( "Getting policy with ID: %s", - policyRuleState.getPolicyRuleId().getUuid().getUuid()); - message.complete(policyRuleState.getPolicyRuleId().getUuid().getUuid()); + policyRuleService.getPolicyRuleBasic().getPolicyRuleId().getUuid()); + message.complete( + policyRuleService.getPolicyRuleBasic().getPolicyRuleId().getUuid().getUuid()); }); + assertThat(message.get(5, TimeUnit.SECONDS)).isEqualTo(policyRuleId.getUuid().getUuid()); } @Test - void shouldGetPolicyByDeviceId() - throws ExecutionException, InterruptedException, TimeoutException { - + void shouldGetPolicyDevice() throws ExecutionException, InterruptedException, TimeoutException { CompletableFuture<String> message = new CompletableFuture<>(); final var uuid = ContextOuterClass.Uuid.newBuilder() .setUuid(UUID.fromString("0f14d0ab-9608-7862-a9e4-5ed26688389b").toString()) .build(); - final var deviceId = ContextOuterClass.DeviceId.newBuilder().setDeviceUuid(uuid).build(); + final var policyRuleId = Policy.PolicyRuleId.newBuilder().setUuid(uuid).build(); client - .getPolicyByDeviceId(deviceId) + .getPolicyDevice(policyRuleId) .subscribe() .with( - policyRuleList -> { - LOGGER.infof("Getting policyRuleList with ID: %s", policyRuleList); - message.complete(policyRuleList.toString()); + policyRuleService -> { + LOGGER.infof( + "Getting policy with ID: %s", + policyRuleService.getPolicyRuleBasic().getPolicyRuleId().getUuid()); + message.complete( + policyRuleService.getPolicyRuleBasic().getPolicyRuleId().getUuid().getUuid()); }); - assertThat(message.get(5, TimeUnit.SECONDS)).isEmpty(); + assertThat(message.get(5, TimeUnit.SECONDS)).isEqualTo(policyRuleId.getUuid().getUuid()); } @Test diff --git a/src/policy/target/generated-sources/grpc/policy/MutinyPolicyServiceGrpc.java b/src/policy/target/generated-sources/grpc/policy/MutinyPolicyServiceGrpc.java index bad12a99d34a314f9c097ee7fda4ba7219dbb984..b9d840730272b2d6185cb2eba0c93e8cf4d11e6c 100644 --- a/src/policy/target/generated-sources/grpc/policy/MutinyPolicyServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/policy/MutinyPolicyServiceGrpc.java @@ -36,32 +36,42 @@ public final class MutinyPolicyServiceGrpc implements io.quarkus.grpc.runtime.Mu } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAdd(policy.Policy.PolicyRule request) { - return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::policyAdd); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddService(policy.Policy.PolicyRuleService request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::policyAddService); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdate(policy.Policy.PolicyRule request) { - return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::policyUpdate); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddDevice(policy.Policy.PolicyRuleDevice request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::policyAddDevice); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateService(policy.Policy.PolicyRuleService request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::policyUpdateService); + } + + + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateDevice(policy.Policy.PolicyRuleDevice request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::policyUpdateDevice); + } + + + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRuleId request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::policyDelete); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRule> getPolicy(policy.Policy.PolicyRuleId request) { - return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::getPolicy); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleService> getPolicyService(policy.Policy.PolicyRuleId request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::getPolicyService); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByDeviceId(context.ContextOuterClass.DeviceId request) { - return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::getPolicyByDeviceId); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleDevice> getPolicyDevice(policy.Policy.PolicyRuleId request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::getPolicyDevice); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleServiceList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::getPolicyByServiceId); } @@ -83,89 +93,115 @@ public final class MutinyPolicyServiceGrpc implements io.quarkus.grpc.runtime.Mu - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAdd(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddService(policy.Policy.PolicyRuleService request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddDevice(policy.Policy.PolicyRuleDevice request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateService(policy.Policy.PolicyRuleService request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdate(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateDevice(policy.Policy.PolicyRuleDevice request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRuleId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRule> getPolicy(policy.Policy.PolicyRuleId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleService> getPolicyService(policy.Policy.PolicyRuleId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByDeviceId(context.ContextOuterClass.DeviceId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleDevice> getPolicyDevice(policy.Policy.PolicyRuleId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleServiceList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) .addMethod( - policy.PolicyServiceGrpc.getPolicyAddMethod(), + policy.PolicyServiceGrpc.getPolicyAddServiceMethod(), + asyncUnaryCall( + new MethodHandlers< + policy.Policy.PolicyRuleService, + policy.Policy.PolicyRuleState>( + this, METHODID_POLICY_ADD_SERVICE, compression))) + .addMethod( + policy.PolicyServiceGrpc.getPolicyAddDeviceMethod(), + asyncUnaryCall( + new MethodHandlers< + policy.Policy.PolicyRuleDevice, + policy.Policy.PolicyRuleState>( + this, METHODID_POLICY_ADD_DEVICE, compression))) + .addMethod( + policy.PolicyServiceGrpc.getPolicyUpdateServiceMethod(), asyncUnaryCall( new MethodHandlers< - policy.Policy.PolicyRule, + policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleState>( - this, METHODID_POLICY_ADD, compression))) + this, METHODID_POLICY_UPDATE_SERVICE, compression))) .addMethod( - policy.PolicyServiceGrpc.getPolicyUpdateMethod(), + policy.PolicyServiceGrpc.getPolicyUpdateDeviceMethod(), asyncUnaryCall( new MethodHandlers< - policy.Policy.PolicyRule, + policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleState>( - this, METHODID_POLICY_UPDATE, compression))) + this, METHODID_POLICY_UPDATE_DEVICE, compression))) .addMethod( policy.PolicyServiceGrpc.getPolicyDeleteMethod(), asyncUnaryCall( new MethodHandlers< - policy.Policy.PolicyRule, + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleState>( this, METHODID_POLICY_DELETE, compression))) .addMethod( - policy.PolicyServiceGrpc.getGetPolicyMethod(), + policy.PolicyServiceGrpc.getGetPolicyServiceMethod(), asyncUnaryCall( new MethodHandlers< policy.Policy.PolicyRuleId, - policy.Policy.PolicyRule>( - this, METHODID_GET_POLICY, compression))) + policy.Policy.PolicyRuleService>( + this, METHODID_GET_POLICY_SERVICE, compression))) .addMethod( - policy.PolicyServiceGrpc.getGetPolicyByDeviceIdMethod(), + policy.PolicyServiceGrpc.getGetPolicyDeviceMethod(), asyncUnaryCall( new MethodHandlers< - context.ContextOuterClass.DeviceId, - policy.Policy.PolicyRuleList>( - this, METHODID_GET_POLICY_BY_DEVICE_ID, compression))) + policy.Policy.PolicyRuleId, + policy.Policy.PolicyRuleDevice>( + this, METHODID_GET_POLICY_DEVICE, compression))) .addMethod( policy.PolicyServiceGrpc.getGetPolicyByServiceIdMethod(), asyncUnaryCall( new MethodHandlers< context.ContextOuterClass.ServiceId, - policy.Policy.PolicyRuleList>( + policy.Policy.PolicyRuleServiceList>( this, METHODID_GET_POLICY_BY_SERVICE_ID, compression))) .build(); } } - private static final int METHODID_POLICY_ADD = 0; - private static final int METHODID_POLICY_UPDATE = 1; - private static final int METHODID_POLICY_DELETE = 2; - private static final int METHODID_GET_POLICY = 3; - private static final int METHODID_GET_POLICY_BY_DEVICE_ID = 4; - private static final int METHODID_GET_POLICY_BY_SERVICE_ID = 5; + private static final int METHODID_POLICY_ADD_SERVICE = 0; + private static final int METHODID_POLICY_ADD_DEVICE = 1; + private static final int METHODID_POLICY_UPDATE_SERVICE = 2; + private static final int METHODID_POLICY_UPDATE_DEVICE = 3; + private static final int METHODID_POLICY_DELETE = 4; + private static final int METHODID_GET_POLICY_SERVICE = 5; + private static final int METHODID_GET_POLICY_DEVICE = 6; + private static final int METHODID_GET_POLICY_BY_SERVICE_ID = 7; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -186,39 +222,51 @@ public final class MutinyPolicyServiceGrpc implements io.quarkus.grpc.runtime.Mu @java.lang.SuppressWarnings("unchecked") public void invoke(Req request, io.grpc.stub.StreamObserver<Resp> responseObserver) { switch (methodId) { - case METHODID_POLICY_ADD: - io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRule) request, + case METHODID_POLICY_ADD_SERVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRuleService) request, (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver, compression, - serviceImpl::policyAdd); + serviceImpl::policyAddService); break; - case METHODID_POLICY_UPDATE: - io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRule) request, + case METHODID_POLICY_ADD_DEVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRuleDevice) request, (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver, compression, - serviceImpl::policyUpdate); + serviceImpl::policyAddDevice); + break; + case METHODID_POLICY_UPDATE_SERVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRuleService) request, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver, + compression, + serviceImpl::policyUpdateService); + break; + case METHODID_POLICY_UPDATE_DEVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRuleDevice) request, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver, + compression, + serviceImpl::policyUpdateDevice); break; case METHODID_POLICY_DELETE: - io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRule) request, + io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRuleId) request, (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver, compression, serviceImpl::policyDelete); break; - case METHODID_GET_POLICY: + case METHODID_GET_POLICY_SERVICE: io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRuleId) request, - (io.grpc.stub.StreamObserver<policy.Policy.PolicyRule>) responseObserver, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleService>) responseObserver, compression, - serviceImpl::getPolicy); + serviceImpl::getPolicyService); break; - case METHODID_GET_POLICY_BY_DEVICE_ID: - io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.DeviceId) request, - (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList>) responseObserver, + case METHODID_GET_POLICY_DEVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((policy.Policy.PolicyRuleId) request, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleDevice>) responseObserver, compression, - serviceImpl::getPolicyByDeviceId); + serviceImpl::getPolicyDevice); break; case METHODID_GET_POLICY_BY_SERVICE_ID: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.ServiceId) request, - (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList>) responseObserver, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleServiceList>) responseObserver, compression, serviceImpl::getPolicyByServiceId); break; diff --git a/src/policy/target/generated-sources/grpc/policy/Policy.java b/src/policy/target/generated-sources/grpc/policy/Policy.java index 78734473960668d0c7792df03104b91b5fabdbcb..324f67cddbb0acf4a0d1527c4f70055caa16e50c 100644 --- a/src/policy/target/generated-sources/grpc/policy/Policy.java +++ b/src/policy/target/generated-sources/grpc/policy/Policy.java @@ -21,180 +21,183 @@ public final class Policy { implements com.google.protobuf.ProtocolMessageEnum { /** * <pre> - * Rule is currently inactive + * Undefined rule state * </pre> * - * <code>POLICY_INACTIVE = 0;</code> + * <code>POLICY_UNDEFINED = 0;</code> */ - POLICY_INACTIVE(0), + POLICY_UNDEFINED(0), /** * <pre> - * Rule installation planned + * Rule failed * </pre> * - * <code>POLICY_PLANNED = 1;</code> + * <code>POLICY_FAILED = 1;</code> */ - POLICY_PLANNED(1), + POLICY_FAILED(1), /** * <pre> - * Rule is currently active + * Rule is just inserted * </pre> * - * <code>POLICY_ACTIVE = 2;</code> + * <code>POLICY_INSERTED = 2;</code> */ - POLICY_ACTIVE(2), - UNRECOGNIZED(-1), - ; - + POLICY_INSERTED(2), /** * <pre> - * Rule is currently inactive + * Rule content is correct * </pre> * - * <code>POLICY_INACTIVE = 0;</code> + * <code>POLICY_VALIDATED = 3;</code> */ - public static final int POLICY_INACTIVE_VALUE = 0; + POLICY_VALIDATED(3), /** * <pre> - * Rule installation planned + * Rule subscribed to Monitoring * </pre> * - * <code>POLICY_PLANNED = 1;</code> + * <code>POLICY_PROVISIONED = 4;</code> */ - public static final int POLICY_PLANNED_VALUE = 1; + POLICY_PROVISIONED(4), /** * <pre> - * Rule is currently active + * Rule is currently active (alarm is just thrown by Monitoring) * </pre> * - * <code>POLICY_ACTIVE = 2;</code> + * <code>POLICY_ACTIVE = 5;</code> */ - public static final int POLICY_ACTIVE_VALUE = 2; - - - public final int getNumber() { - if (this == UNRECOGNIZED) { - throw new java.lang.IllegalArgumentException( - "Can't get the number of an unknown enum value."); - } - return value; - } - + POLICY_ACTIVE(5), /** - * @param value The numeric wire value of the corresponding enum entry. - * @return The enum associated with the given numeric wire value. - * @deprecated Use {@link #forNumber(int)} instead. + * <pre> + * Rule action is successfully enforced + * </pre> + * + * <code>POLICY_ENFORCED = 6;</code> */ - @java.lang.Deprecated - public static RuleState valueOf(int value) { - return forNumber(value); - } - + POLICY_ENFORCED(6), /** - * @param value The numeric wire value of the corresponding enum entry. - * @return The enum associated with the given numeric wire value. + * <pre> + * The applied rule action did not work as expected + * </pre> + * + * <code>POLICY_INEFFECTIVE = 7;</code> */ - public static RuleState forNumber(int value) { - switch (value) { - case 0: return POLICY_INACTIVE; - case 1: return POLICY_PLANNED; - case 2: return POLICY_ACTIVE; - default: return null; - } - } - - public static com.google.protobuf.Internal.EnumLiteMap<RuleState> - internalGetValueMap() { - return internalValueMap; - } - private static final com.google.protobuf.Internal.EnumLiteMap< - RuleState> internalValueMap = - new com.google.protobuf.Internal.EnumLiteMap<RuleState>() { - public RuleState findValueByNumber(int number) { - return RuleState.forNumber(number); - } - }; - - public final com.google.protobuf.Descriptors.EnumValueDescriptor - getValueDescriptor() { - if (this == UNRECOGNIZED) { - throw new java.lang.IllegalStateException( - "Can't get the descriptor of an unrecognized enum value."); - } - return getDescriptor().getValues().get(ordinal()); - } - public final com.google.protobuf.Descriptors.EnumDescriptor - getDescriptorForType() { - return getDescriptor(); - } - public static final com.google.protobuf.Descriptors.EnumDescriptor - getDescriptor() { - return policy.Policy.getDescriptor().getEnumTypes().get(0); - } - - private static final RuleState[] VALUES = values(); - - public static RuleState valueOf( - com.google.protobuf.Descriptors.EnumValueDescriptor desc) { - if (desc.getType() != getDescriptor()) { - throw new java.lang.IllegalArgumentException( - "EnumValueDescriptor is not for this type."); - } - if (desc.getIndex() == -1) { - return UNRECOGNIZED; - } - return VALUES[desc.getIndex()]; - } - - private final int value; - - private RuleState(int value) { - this.value = value; - } - - // @@protoc_insertion_point(enum_scope:policy.RuleState) - } - - /** - * Protobuf enum {@code policy.PolicyRuleType} - */ - public enum PolicyRuleType - implements com.google.protobuf.ProtocolMessageEnum { + POLICY_INEFFECTIVE(7), + /** + * <pre> + * The applied rule action did work as expected + * </pre> + * + * <code>POLICY_EFFECTIVE = 8;</code> + */ + POLICY_EFFECTIVE(8), /** * <pre> - * Device-level + * Operator requires a policy to change * </pre> * - * <code>POLICYTYPE_DEVICE = 0;</code> + * <code>POLICY_UPDATED = 9;</code> */ - POLICYTYPE_DEVICE(0), + POLICY_UPDATED(9), /** * <pre> - * Network-wide + * Operator requires to remove a policy * </pre> * - * <code>POLICYTYPE_NETWORK = 1;</code> + * <code>POLICY_REMOVED = 10;</code> */ - POLICYTYPE_NETWORK(1), + POLICY_REMOVED(10), UNRECOGNIZED(-1), ; /** * <pre> - * Device-level + * Undefined rule state + * </pre> + * + * <code>POLICY_UNDEFINED = 0;</code> + */ + public static final int POLICY_UNDEFINED_VALUE = 0; + /** + * <pre> + * Rule failed + * </pre> + * + * <code>POLICY_FAILED = 1;</code> + */ + public static final int POLICY_FAILED_VALUE = 1; + /** + * <pre> + * Rule is just inserted + * </pre> + * + * <code>POLICY_INSERTED = 2;</code> + */ + public static final int POLICY_INSERTED_VALUE = 2; + /** + * <pre> + * Rule content is correct + * </pre> + * + * <code>POLICY_VALIDATED = 3;</code> + */ + public static final int POLICY_VALIDATED_VALUE = 3; + /** + * <pre> + * Rule subscribed to Monitoring + * </pre> + * + * <code>POLICY_PROVISIONED = 4;</code> + */ + public static final int POLICY_PROVISIONED_VALUE = 4; + /** + * <pre> + * Rule is currently active (alarm is just thrown by Monitoring) + * </pre> + * + * <code>POLICY_ACTIVE = 5;</code> + */ + public static final int POLICY_ACTIVE_VALUE = 5; + /** + * <pre> + * Rule action is successfully enforced + * </pre> + * + * <code>POLICY_ENFORCED = 6;</code> + */ + public static final int POLICY_ENFORCED_VALUE = 6; + /** + * <pre> + * The applied rule action did not work as expected + * </pre> + * + * <code>POLICY_INEFFECTIVE = 7;</code> + */ + public static final int POLICY_INEFFECTIVE_VALUE = 7; + /** + * <pre> + * The applied rule action did work as expected + * </pre> + * + * <code>POLICY_EFFECTIVE = 8;</code> + */ + public static final int POLICY_EFFECTIVE_VALUE = 8; + /** + * <pre> + * Operator requires a policy to change * </pre> * - * <code>POLICYTYPE_DEVICE = 0;</code> + * <code>POLICY_UPDATED = 9;</code> */ - public static final int POLICYTYPE_DEVICE_VALUE = 0; + public static final int POLICY_UPDATED_VALUE = 9; /** * <pre> - * Network-wide + * Operator requires to remove a policy * </pre> * - * <code>POLICYTYPE_NETWORK = 1;</code> + * <code>POLICY_REMOVED = 10;</code> */ - public static final int POLICYTYPE_NETWORK_VALUE = 1; + public static final int POLICY_REMOVED_VALUE = 10; public final int getNumber() { @@ -211,7 +214,7 @@ public final class Policy { * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated - public static PolicyRuleType valueOf(int value) { + public static RuleState valueOf(int value) { return forNumber(value); } @@ -219,23 +222,32 @@ public final class Policy { * @param value The numeric wire value of the corresponding enum entry. * @return The enum associated with the given numeric wire value. */ - public static PolicyRuleType forNumber(int value) { + public static RuleState forNumber(int value) { switch (value) { - case 0: return POLICYTYPE_DEVICE; - case 1: return POLICYTYPE_NETWORK; + case 0: return POLICY_UNDEFINED; + case 1: return POLICY_FAILED; + case 2: return POLICY_INSERTED; + case 3: return POLICY_VALIDATED; + case 4: return POLICY_PROVISIONED; + case 5: return POLICY_ACTIVE; + case 6: return POLICY_ENFORCED; + case 7: return POLICY_INEFFECTIVE; + case 8: return POLICY_EFFECTIVE; + case 9: return POLICY_UPDATED; + case 10: return POLICY_REMOVED; default: return null; } } - public static com.google.protobuf.Internal.EnumLiteMap<PolicyRuleType> + public static com.google.protobuf.Internal.EnumLiteMap<RuleState> internalGetValueMap() { return internalValueMap; } private static final com.google.protobuf.Internal.EnumLiteMap< - PolicyRuleType> internalValueMap = - new com.google.protobuf.Internal.EnumLiteMap<PolicyRuleType>() { - public PolicyRuleType findValueByNumber(int number) { - return PolicyRuleType.forNumber(number); + RuleState> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap<RuleState>() { + public RuleState findValueByNumber(int number) { + return RuleState.forNumber(number); } }; @@ -253,12 +265,12 @@ public final class Policy { } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { - return policy.Policy.getDescriptor().getEnumTypes().get(1); + return policy.Policy.getDescriptor().getEnumTypes().get(0); } - private static final PolicyRuleType[] VALUES = values(); + private static final RuleState[] VALUES = values(); - public static PolicyRuleType valueOf( + public static RuleState valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( @@ -272,11 +284,11 @@ public final class Policy { private final int value; - private PolicyRuleType(int value) { + private RuleState(int value) { this.value = value; } - // @@protoc_insertion_point(enum_scope:policy.PolicyRuleType) + // @@protoc_insertion_point(enum_scope:policy.RuleState) } public interface PolicyRuleIdOrBuilder extends @@ -905,27 +917,12 @@ public final class Policy { com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid policyRuleId = 1;</code> - * @return Whether the policyRuleId field is set. - */ - boolean hasPolicyRuleId(); - /** - * <code>.context.Uuid policyRuleId = 1;</code> - * @return The policyRuleId. - */ - context.ContextOuterClass.Uuid getPolicyRuleId(); - /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - context.ContextOuterClass.UuidOrBuilder getPolicyRuleIdOrBuilder(); - - /** - * <code>.policy.RuleState policyRuleState = 2;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> * @return The enum numeric value on the wire for policyRuleState. */ int getPolicyRuleStateValue(); /** - * <code>.policy.RuleState policyRuleState = 2;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> * @return The policyRuleState. */ policy.Policy.RuleState getPolicyRuleState(); @@ -976,20 +973,7 @@ public final class Policy { case 0: done = true; break; - case 10: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (policyRuleId_ != null) { - subBuilder = policyRuleId_.toBuilder(); - } - policyRuleId_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(policyRuleId_); - policyRuleId_ = subBuilder.buildPartial(); - } - - break; - } - case 16: { + case 8: { int rawValue = input.readEnum(); policyRuleState_ = rawValue; @@ -1027,43 +1011,17 @@ public final class Policy { policy.Policy.PolicyRuleState.class, policy.Policy.PolicyRuleState.Builder.class); } - public static final int POLICYRULEID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid policyRuleId_; - /** - * <code>.context.Uuid policyRuleId = 1;</code> - * @return Whether the policyRuleId field is set. - */ - @java.lang.Override - public boolean hasPolicyRuleId() { - return policyRuleId_ != null; - } - /** - * <code>.context.Uuid policyRuleId = 1;</code> - * @return The policyRuleId. - */ - @java.lang.Override - public context.ContextOuterClass.Uuid getPolicyRuleId() { - return policyRuleId_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : policyRuleId_; - } - /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getPolicyRuleIdOrBuilder() { - return getPolicyRuleId(); - } - - public static final int POLICYRULESTATE_FIELD_NUMBER = 2; + public static final int POLICYRULESTATE_FIELD_NUMBER = 1; private int policyRuleState_; /** - * <code>.policy.RuleState policyRuleState = 2;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> * @return The enum numeric value on the wire for policyRuleState. */ @java.lang.Override public int getPolicyRuleStateValue() { return policyRuleState_; } /** - * <code>.policy.RuleState policyRuleState = 2;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> * @return The policyRuleState. */ @java.lang.Override public policy.Policy.RuleState getPolicyRuleState() { @@ -1086,11 +1044,8 @@ public final class Policy { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (policyRuleId_ != null) { - output.writeMessage(1, getPolicyRuleId()); - } - if (policyRuleState_ != policy.Policy.RuleState.POLICY_INACTIVE.getNumber()) { - output.writeEnum(2, policyRuleState_); + if (policyRuleState_ != policy.Policy.RuleState.POLICY_UNDEFINED.getNumber()) { + output.writeEnum(1, policyRuleState_); } unknownFields.writeTo(output); } @@ -1101,13 +1056,9 @@ public final class Policy { if (size != -1) return size; size = 0; - if (policyRuleId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getPolicyRuleId()); - } - if (policyRuleState_ != policy.Policy.RuleState.POLICY_INACTIVE.getNumber()) { + if (policyRuleState_ != policy.Policy.RuleState.POLICY_UNDEFINED.getNumber()) { size += com.google.protobuf.CodedOutputStream - .computeEnumSize(2, policyRuleState_); + .computeEnumSize(1, policyRuleState_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -1124,11 +1075,6 @@ public final class Policy { } policy.Policy.PolicyRuleState other = (policy.Policy.PolicyRuleState) obj; - if (hasPolicyRuleId() != other.hasPolicyRuleId()) return false; - if (hasPolicyRuleId()) { - if (!getPolicyRuleId() - .equals(other.getPolicyRuleId())) return false; - } if (policyRuleState_ != other.policyRuleState_) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -1141,10 +1087,6 @@ public final class Policy { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasPolicyRuleId()) { - hash = (37 * hash) + POLICYRULEID_FIELD_NUMBER; - hash = (53 * hash) + getPolicyRuleId().hashCode(); - } hash = (37 * hash) + POLICYRULESTATE_FIELD_NUMBER; hash = (53 * hash) + policyRuleState_; hash = (29 * hash) + unknownFields.hashCode(); @@ -1280,12 +1222,6 @@ public final class Policy { @java.lang.Override public Builder clear() { super.clear(); - if (policyRuleIdBuilder_ == null) { - policyRuleId_ = null; - } else { - policyRuleId_ = null; - policyRuleIdBuilder_ = null; - } policyRuleState_ = 0; return this; @@ -1314,11 +1250,6 @@ public final class Policy { @java.lang.Override public policy.Policy.PolicyRuleState buildPartial() { policy.Policy.PolicyRuleState result = new policy.Policy.PolicyRuleState(this); - if (policyRuleIdBuilder_ == null) { - result.policyRuleId_ = policyRuleId_; - } else { - result.policyRuleId_ = policyRuleIdBuilder_.build(); - } result.policyRuleState_ = policyRuleState_; onBuilt(); return result; @@ -1368,9 +1299,6 @@ public final class Policy { public Builder mergeFrom(policy.Policy.PolicyRuleState other) { if (other == policy.Policy.PolicyRuleState.getDefaultInstance()) return this; - if (other.hasPolicyRuleId()) { - mergePolicyRuleId(other.getPolicyRuleId()); - } if (other.policyRuleState_ != 0) { setPolicyRuleStateValue(other.getPolicyRuleStateValue()); } @@ -1403,146 +1331,27 @@ public final class Policy { return this; } - private context.ContextOuterClass.Uuid policyRuleId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> policyRuleIdBuilder_; - /** - * <code>.context.Uuid policyRuleId = 1;</code> - * @return Whether the policyRuleId field is set. - */ - public boolean hasPolicyRuleId() { - return policyRuleIdBuilder_ != null || policyRuleId_ != null; - } + private int policyRuleState_ = 0; /** - * <code>.context.Uuid policyRuleId = 1;</code> - * @return The policyRuleId. + * <code>.policy.RuleState policyRuleState = 1;</code> + * @return The enum numeric value on the wire for policyRuleState. */ - public context.ContextOuterClass.Uuid getPolicyRuleId() { - if (policyRuleIdBuilder_ == null) { - return policyRuleId_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : policyRuleId_; - } else { - return policyRuleIdBuilder_.getMessage(); - } + @java.lang.Override public int getPolicyRuleStateValue() { + return policyRuleState_; } /** - * <code>.context.Uuid policyRuleId = 1;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> + * @param value The enum numeric value on the wire for policyRuleState to set. + * @return This builder for chaining. */ - public Builder setPolicyRuleId(context.ContextOuterClass.Uuid value) { - if (policyRuleIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - policyRuleId_ = value; - onChanged(); - } else { - policyRuleIdBuilder_.setMessage(value); - } - + public Builder setPolicyRuleStateValue(int value) { + + policyRuleState_ = value; + onChanged(); return this; } /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - public Builder setPolicyRuleId( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (policyRuleIdBuilder_ == null) { - policyRuleId_ = builderForValue.build(); - onChanged(); - } else { - policyRuleIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - public Builder mergePolicyRuleId(context.ContextOuterClass.Uuid value) { - if (policyRuleIdBuilder_ == null) { - if (policyRuleId_ != null) { - policyRuleId_ = - context.ContextOuterClass.Uuid.newBuilder(policyRuleId_).mergeFrom(value).buildPartial(); - } else { - policyRuleId_ = value; - } - onChanged(); - } else { - policyRuleIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - public Builder clearPolicyRuleId() { - if (policyRuleIdBuilder_ == null) { - policyRuleId_ = null; - onChanged(); - } else { - policyRuleId_ = null; - policyRuleIdBuilder_ = null; - } - - return this; - } - /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - public context.ContextOuterClass.Uuid.Builder getPolicyRuleIdBuilder() { - - onChanged(); - return getPolicyRuleIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - public context.ContextOuterClass.UuidOrBuilder getPolicyRuleIdOrBuilder() { - if (policyRuleIdBuilder_ != null) { - return policyRuleIdBuilder_.getMessageOrBuilder(); - } else { - return policyRuleId_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : policyRuleId_; - } - } - /** - * <code>.context.Uuid policyRuleId = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getPolicyRuleIdFieldBuilder() { - if (policyRuleIdBuilder_ == null) { - policyRuleIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getPolicyRuleId(), - getParentForChildren(), - isClean()); - policyRuleId_ = null; - } - return policyRuleIdBuilder_; - } - - private int policyRuleState_ = 0; - /** - * <code>.policy.RuleState policyRuleState = 2;</code> - * @return The enum numeric value on the wire for policyRuleState. - */ - @java.lang.Override public int getPolicyRuleStateValue() { - return policyRuleState_; - } - /** - * <code>.policy.RuleState policyRuleState = 2;</code> - * @param value The enum numeric value on the wire for policyRuleState to set. - * @return This builder for chaining. - */ - public Builder setPolicyRuleStateValue(int value) { - - policyRuleState_ = value; - onChanged(); - return this; - } - /** - * <code>.policy.RuleState policyRuleState = 2;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> * @return The policyRuleState. */ @java.lang.Override @@ -1552,7 +1361,7 @@ public final class Policy { return result == null ? policy.Policy.RuleState.UNRECOGNIZED : result; } /** - * <code>.policy.RuleState policyRuleState = 2;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> * @param value The policyRuleState to set. * @return This builder for chaining. */ @@ -1566,7 +1375,7 @@ public final class Policy { return this; } /** - * <code>.policy.RuleState policyRuleState = 2;</code> + * <code>.policy.RuleState policyRuleState = 1;</code> * @return This builder for chaining. */ public Builder clearPolicyRuleState() { @@ -1628,51 +1437,180 @@ public final class Policy { } - public interface PolicyRuleEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:policy.PolicyRuleEvent) + public interface PolicyRuleBasicOrBuilder extends + // @@protoc_insertion_point(interface_extends:policy.PolicyRuleBasic) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * @return Whether the policyRuleId field is set. + */ + boolean hasPolicyRuleId(); + /** + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * @return The policyRuleId. + */ + policy.Policy.PolicyRuleId getPolicyRuleId(); + /** + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + */ + policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdOrBuilder(); + + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + * @return Whether the policyRuleState field is set. + */ + boolean hasPolicyRuleState(); + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + * @return The policyRuleState. + */ + policy.Policy.PolicyRuleState getPolicyRuleState(); + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + policy.Policy.PolicyRuleStateOrBuilder getPolicyRuleStateOrBuilder(); + + /** + * <code>uint32 priority = 3;</code> + * @return The priority. + */ + int getPriority(); + + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + java.util.List<policy.PolicyCondition.PolicyRuleCondition> + getConditionListList(); + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + policy.PolicyCondition.PolicyRuleCondition getConditionList(int index); + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + int getConditionListCount(); + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + java.util.List<? extends policy.PolicyCondition.PolicyRuleConditionOrBuilder> + getConditionListOrBuilderList(); + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + policy.PolicyCondition.PolicyRuleConditionOrBuilder getConditionListOrBuilder( + int index); + + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @return The enum numeric value on the wire for booleanOperator. + */ + int getBooleanOperatorValue(); + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @return The booleanOperator. + */ + policy.PolicyCondition.BooleanOperator getBooleanOperator(); + + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + java.util.List<policy.PolicyAction.PolicyRuleAction> + getActionListList(); + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + policy.PolicyAction.PolicyRuleAction getActionList(int index); + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> */ - boolean hasEvent(); + int getActionListCount(); /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> */ - context.ContextOuterClass.Event getEvent(); + java.util.List<? extends policy.PolicyAction.PolicyRuleActionOrBuilder> + getActionListOrBuilderList(); /** - * <code>.context.Event event = 1;</code> + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + policy.PolicyAction.PolicyRuleActionOrBuilder getActionListOrBuilder( + int index); } /** * <pre> - * IETF draft: Framework for Use of ECA (Event Condition Action) in Network Self Management - * Source: https://datatracker.ietf.org/doc/draft-bwd-netmod-eca-framework/ - * Event + * Basic policy rule attributes * </pre> * - * Protobuf type {@code policy.PolicyRuleEvent} + * Protobuf type {@code policy.PolicyRuleBasic} */ - public static final class PolicyRuleEvent extends + public static final class PolicyRuleBasic extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:policy.PolicyRuleEvent) - PolicyRuleEventOrBuilder { + // @@protoc_insertion_point(message_implements:policy.PolicyRuleBasic) + PolicyRuleBasicOrBuilder { private static final long serialVersionUID = 0L; - // Use PolicyRuleEvent.newBuilder() to construct. - private PolicyRuleEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use PolicyRuleBasic.newBuilder() to construct. + private PolicyRuleBasic(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private PolicyRuleEvent() { + private PolicyRuleBasic() { + conditionList_ = java.util.Collections.emptyList(); + booleanOperator_ = 0; + actionList_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new PolicyRuleEvent(); + return new PolicyRuleBasic(); } @java.lang.Override @@ -1680,7 +1618,7 @@ public final class Policy { getUnknownFields() { return this.unknownFields; } - private PolicyRuleEvent( + private PolicyRuleBasic( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -1688,6 +1626,7 @@ public final class Policy { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -1699,16 +1638,58 @@ public final class Policy { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); + policy.Policy.PolicyRuleId.Builder subBuilder = null; + if (policyRuleId_ != null) { + subBuilder = policyRuleId_.toBuilder(); + } + policyRuleId_ = input.readMessage(policy.Policy.PolicyRuleId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(policyRuleId_); + policyRuleId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + policy.Policy.PolicyRuleState.Builder subBuilder = null; + if (((bitField0_ & 0x00000001) != 0)) { + subBuilder = policyRuleState_.toBuilder(); } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + policyRuleState_ = input.readMessage(policy.Policy.PolicyRuleState.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(policyRuleState_); + policyRuleState_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000001; + break; + } + case 24: { + + priority_ = input.readUInt32(); + break; + } + case 34: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + conditionList_ = new java.util.ArrayList<policy.PolicyCondition.PolicyRuleCondition>(); + mutable_bitField0_ |= 0x00000002; } + conditionList_.add( + input.readMessage(policy.PolicyCondition.PolicyRuleCondition.parser(), extensionRegistry)); + break; + } + case 40: { + int rawValue = input.readEnum(); + booleanOperator_ = rawValue; + break; + } + case 50: { + if (!((mutable_bitField0_ & 0x00000004) != 0)) { + actionList_ = new java.util.ArrayList<policy.PolicyAction.PolicyRuleAction>(); + mutable_bitField0_ |= 0x00000004; + } + actionList_.add( + input.readMessage(policy.PolicyAction.PolicyRuleAction.parser(), extensionRegistry)); break; } default: { @@ -1726,47 +1707,238 @@ public final class Policy { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000002) != 0)) { + conditionList_ = java.util.Collections.unmodifiableList(conditionList_); + } + if (((mutable_bitField0_ & 0x00000004) != 0)) { + actionList_ = java.util.Collections.unmodifiableList(actionList_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return policy.Policy.internal_static_policy_PolicyRuleEvent_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleBasic_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return policy.Policy.internal_static_policy_PolicyRuleEvent_fieldAccessorTable + return policy.Policy.internal_static_policy_PolicyRuleBasic_fieldAccessorTable .ensureFieldAccessorsInitialized( - policy.Policy.PolicyRuleEvent.class, policy.Policy.PolicyRuleEvent.Builder.class); + policy.Policy.PolicyRuleBasic.class, policy.Policy.PolicyRuleBasic.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; + private int bitField0_; + public static final int POLICYRULEID_FIELD_NUMBER = 1; + private policy.Policy.PolicyRuleId policyRuleId_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * @return Whether the policyRuleId field is set. */ @java.lang.Override - public boolean hasEvent() { - return event_ != null; + public boolean hasPolicyRuleId() { + return policyRuleId_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * @return The policyRuleId. */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public policy.Policy.PolicyRuleId getPolicyRuleId() { + return policyRuleId_ == null ? policy.Policy.PolicyRuleId.getDefaultInstance() : policyRuleId_; + } + /** + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + */ + @java.lang.Override + public policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdOrBuilder() { + return getPolicyRuleId(); + } + + public static final int POLICYRULESTATE_FIELD_NUMBER = 2; + private policy.Policy.PolicyRuleState policyRuleState_; + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + * @return Whether the policyRuleState field is set. + */ + @java.lang.Override + public boolean hasPolicyRuleState() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + * @return The policyRuleState. + */ + @java.lang.Override + public policy.Policy.PolicyRuleState getPolicyRuleState() { + return policyRuleState_ == null ? policy.Policy.PolicyRuleState.getDefaultInstance() : policyRuleState_; + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + @java.lang.Override + public policy.Policy.PolicyRuleStateOrBuilder getPolicyRuleStateOrBuilder() { + return policyRuleState_ == null ? policy.Policy.PolicyRuleState.getDefaultInstance() : policyRuleState_; + } + + public static final int PRIORITY_FIELD_NUMBER = 3; + private int priority_; + /** + * <code>uint32 priority = 3;</code> + * @return The priority. + */ + @java.lang.Override + public int getPriority() { + return priority_; + } + + public static final int CONDITIONLIST_FIELD_NUMBER = 4; + private java.util.List<policy.PolicyCondition.PolicyRuleCondition> conditionList_; + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + @java.lang.Override + public java.util.List<policy.PolicyCondition.PolicyRuleCondition> getConditionListList() { + return conditionList_; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + @java.lang.Override + public java.util.List<? extends policy.PolicyCondition.PolicyRuleConditionOrBuilder> + getConditionListOrBuilderList() { + return conditionList_; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + @java.lang.Override + public int getConditionListCount() { + return conditionList_.size(); + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + @java.lang.Override + public policy.PolicyCondition.PolicyRuleCondition getConditionList(int index) { + return conditionList_.get(index); + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + @java.lang.Override + public policy.PolicyCondition.PolicyRuleConditionOrBuilder getConditionListOrBuilder( + int index) { + return conditionList_.get(index); + } + + public static final int BOOLEANOPERATOR_FIELD_NUMBER = 5; + private int booleanOperator_; + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @return The enum numeric value on the wire for booleanOperator. + */ + @java.lang.Override public int getBooleanOperatorValue() { + return booleanOperator_; + } + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @return The booleanOperator. + */ + @java.lang.Override public policy.PolicyCondition.BooleanOperator getBooleanOperator() { + @SuppressWarnings("deprecation") + policy.PolicyCondition.BooleanOperator result = policy.PolicyCondition.BooleanOperator.valueOf(booleanOperator_); + return result == null ? policy.PolicyCondition.BooleanOperator.UNRECOGNIZED : result; + } + + public static final int ACTIONLIST_FIELD_NUMBER = 6; + private java.util.List<policy.PolicyAction.PolicyRuleAction> actionList_; + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + @java.lang.Override + public java.util.List<policy.PolicyAction.PolicyRuleAction> getActionListList() { + return actionList_; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + @java.lang.Override + public java.util.List<? extends policy.PolicyAction.PolicyRuleActionOrBuilder> + getActionListOrBuilderList() { + return actionList_; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + @java.lang.Override + public int getActionListCount() { + return actionList_.size(); + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + @java.lang.Override + public policy.PolicyAction.PolicyRuleAction getActionList(int index) { + return actionList_.get(index); } /** - * <code>.context.Event event = 1;</code> + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public policy.PolicyAction.PolicyRuleActionOrBuilder getActionListOrBuilder( + int index) { + return actionList_.get(index); } private byte memoizedIsInitialized = -1; @@ -1783,8 +1955,23 @@ public final class Policy { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); + if (policyRuleId_ != null) { + output.writeMessage(1, getPolicyRuleId()); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(2, getPolicyRuleState()); + } + if (priority_ != 0) { + output.writeUInt32(3, priority_); + } + for (int i = 0; i < conditionList_.size(); i++) { + output.writeMessage(4, conditionList_.get(i)); + } + if (booleanOperator_ != policy.PolicyCondition.BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_UNDEFINED.getNumber()) { + output.writeEnum(5, booleanOperator_); + } + for (int i = 0; i < actionList_.size(); i++) { + output.writeMessage(6, actionList_.get(i)); } unknownFields.writeTo(output); } @@ -1795,9 +1982,29 @@ public final class Policy { if (size != -1) return size; size = 0; - if (event_ != null) { + if (policyRuleId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getPolicyRuleId()); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getPolicyRuleState()); + } + if (priority_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(3, priority_); + } + for (int i = 0; i < conditionList_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, conditionList_.get(i)); + } + if (booleanOperator_ != policy.PolicyCondition.BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_UNDEFINED.getNumber()) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); + .computeEnumSize(5, booleanOperator_); + } + for (int i = 0; i < actionList_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(6, actionList_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -1809,16 +2016,28 @@ public final class Policy { if (obj == this) { return true; } - if (!(obj instanceof policy.Policy.PolicyRuleEvent)) { + if (!(obj instanceof policy.Policy.PolicyRuleBasic)) { return super.equals(obj); } - policy.Policy.PolicyRuleEvent other = (policy.Policy.PolicyRuleEvent) obj; + policy.Policy.PolicyRuleBasic other = (policy.Policy.PolicyRuleBasic) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; + if (hasPolicyRuleId() != other.hasPolicyRuleId()) return false; + if (hasPolicyRuleId()) { + if (!getPolicyRuleId() + .equals(other.getPolicyRuleId())) return false; + } + if (hasPolicyRuleState() != other.hasPolicyRuleState()) return false; + if (hasPolicyRuleState()) { + if (!getPolicyRuleState() + .equals(other.getPolicyRuleState())) return false; } + if (getPriority() + != other.getPriority()) return false; + if (!getConditionListList() + .equals(other.getConditionListList())) return false; + if (booleanOperator_ != other.booleanOperator_) return false; + if (!getActionListList() + .equals(other.getActionListList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -1830,78 +2049,94 @@ public final class Policy { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); + if (hasPolicyRuleId()) { + hash = (37 * hash) + POLICYRULEID_FIELD_NUMBER; + hash = (53 * hash) + getPolicyRuleId().hashCode(); + } + if (hasPolicyRuleState()) { + hash = (37 * hash) + POLICYRULESTATE_FIELD_NUMBER; + hash = (53 * hash) + getPolicyRuleState().hashCode(); + } + hash = (37 * hash) + PRIORITY_FIELD_NUMBER; + hash = (53 * hash) + getPriority(); + if (getConditionListCount() > 0) { + hash = (37 * hash) + CONDITIONLIST_FIELD_NUMBER; + hash = (53 * hash) + getConditionListList().hashCode(); + } + hash = (37 * hash) + BOOLEANOPERATOR_FIELD_NUMBER; + hash = (53 * hash) + booleanOperator_; + if (getActionListCount() > 0) { + hash = (37 * hash) + ACTIONLIST_FIELD_NUMBER; + hash = (53 * hash) + getActionListList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRuleEvent parseFrom(byte[] data) + public static policy.Policy.PolicyRuleBasic parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRuleEvent parseFrom(java.io.InputStream input) + public static policy.Policy.PolicyRuleBasic parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } - public static policy.Policy.PolicyRuleEvent parseDelimitedFrom(java.io.InputStream input) + public static policy.Policy.PolicyRuleBasic parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static policy.Policy.PolicyRuleEvent parseDelimitedFrom( + public static policy.Policy.PolicyRuleBasic parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static policy.Policy.PolicyRuleEvent parseFrom( + public static policy.Policy.PolicyRuleBasic parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -1914,7 +2149,7 @@ public final class Policy { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(policy.Policy.PolicyRuleEvent prototype) { + public static Builder newBuilder(policy.Policy.PolicyRuleBasic prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -1931,31 +2166,29 @@ public final class Policy { } /** * <pre> - * IETF draft: Framework for Use of ECA (Event Condition Action) in Network Self Management - * Source: https://datatracker.ietf.org/doc/draft-bwd-netmod-eca-framework/ - * Event + * Basic policy rule attributes * </pre> * - * Protobuf type {@code policy.PolicyRuleEvent} + * Protobuf type {@code policy.PolicyRuleBasic} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:policy.PolicyRuleEvent) - policy.Policy.PolicyRuleEventOrBuilder { + // @@protoc_insertion_point(builder_implements:policy.PolicyRuleBasic) + policy.Policy.PolicyRuleBasicOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return policy.Policy.internal_static_policy_PolicyRuleEvent_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleBasic_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return policy.Policy.internal_static_policy_PolicyRuleEvent_fieldAccessorTable + return policy.Policy.internal_static_policy_PolicyRuleBasic_fieldAccessorTable .ensureFieldAccessorsInitialized( - policy.Policy.PolicyRuleEvent.class, policy.Policy.PolicyRuleEvent.Builder.class); + policy.Policy.PolicyRuleBasic.class, policy.Policy.PolicyRuleBasic.Builder.class); } - // Construct using policy.Policy.PolicyRuleEvent.newBuilder() + // Construct using policy.Policy.PolicyRuleBasic.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -1968,16 +2201,41 @@ public final class Policy { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getPolicyRuleStateFieldBuilder(); + getConditionListFieldBuilder(); + getActionListFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; + if (policyRuleIdBuilder_ == null) { + policyRuleId_ = null; + } else { + policyRuleId_ = null; + policyRuleIdBuilder_ = null; + } + if (policyRuleStateBuilder_ == null) { + policyRuleState_ = null; } else { - event_ = null; - eventBuilder_ = null; + policyRuleStateBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + priority_ = 0; + + if (conditionListBuilder_ == null) { + conditionList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + conditionListBuilder_.clear(); + } + booleanOperator_ = 0; + + if (actionListBuilder_ == null) { + actionList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + } else { + actionListBuilder_.clear(); } return this; } @@ -1985,17 +2243,17 @@ public final class Policy { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return policy.Policy.internal_static_policy_PolicyRuleEvent_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleBasic_descriptor; } @java.lang.Override - public policy.Policy.PolicyRuleEvent getDefaultInstanceForType() { - return policy.Policy.PolicyRuleEvent.getDefaultInstance(); + public policy.Policy.PolicyRuleBasic getDefaultInstanceForType() { + return policy.Policy.PolicyRuleBasic.getDefaultInstance(); } @java.lang.Override - public policy.Policy.PolicyRuleEvent build() { - policy.Policy.PolicyRuleEvent result = buildPartial(); + public policy.Policy.PolicyRuleBasic build() { + policy.Policy.PolicyRuleBasic result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -2003,25 +2261,56 @@ public final class Policy { } @java.lang.Override - public policy.Policy.PolicyRuleEvent buildPartial() { - policy.Policy.PolicyRuleEvent result = new policy.Policy.PolicyRuleEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; + public policy.Policy.PolicyRuleBasic buildPartial() { + policy.Policy.PolicyRuleBasic result = new policy.Policy.PolicyRuleBasic(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (policyRuleIdBuilder_ == null) { + result.policyRuleId_ = policyRuleId_; } else { - result.event_ = eventBuilder_.build(); + result.policyRuleId_ = policyRuleIdBuilder_.build(); } - onBuilt(); - return result; - } - - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { + if (((from_bitField0_ & 0x00000001) != 0)) { + if (policyRuleStateBuilder_ == null) { + result.policyRuleState_ = policyRuleState_; + } else { + result.policyRuleState_ = policyRuleStateBuilder_.build(); + } + to_bitField0_ |= 0x00000001; + } + result.priority_ = priority_; + if (conditionListBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + conditionList_ = java.util.Collections.unmodifiableList(conditionList_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.conditionList_ = conditionList_; + } else { + result.conditionList_ = conditionListBuilder_.build(); + } + result.booleanOperator_ = booleanOperator_; + if (actionListBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + actionList_ = java.util.Collections.unmodifiableList(actionList_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.actionList_ = actionList_; + } else { + result.actionList_ = actionListBuilder_.build(); + } + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { return super.setField(field, value); } @java.lang.Override @@ -2048,18 +2337,79 @@ public final class Policy { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof policy.Policy.PolicyRuleEvent) { - return mergeFrom((policy.Policy.PolicyRuleEvent)other); + if (other instanceof policy.Policy.PolicyRuleBasic) { + return mergeFrom((policy.Policy.PolicyRuleBasic)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(policy.Policy.PolicyRuleEvent other) { - if (other == policy.Policy.PolicyRuleEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); + public Builder mergeFrom(policy.Policy.PolicyRuleBasic other) { + if (other == policy.Policy.PolicyRuleBasic.getDefaultInstance()) return this; + if (other.hasPolicyRuleId()) { + mergePolicyRuleId(other.getPolicyRuleId()); + } + if (other.hasPolicyRuleState()) { + mergePolicyRuleState(other.getPolicyRuleState()); + } + if (other.getPriority() != 0) { + setPriority(other.getPriority()); + } + if (conditionListBuilder_ == null) { + if (!other.conditionList_.isEmpty()) { + if (conditionList_.isEmpty()) { + conditionList_ = other.conditionList_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureConditionListIsMutable(); + conditionList_.addAll(other.conditionList_); + } + onChanged(); + } + } else { + if (!other.conditionList_.isEmpty()) { + if (conditionListBuilder_.isEmpty()) { + conditionListBuilder_.dispose(); + conditionListBuilder_ = null; + conditionList_ = other.conditionList_; + bitField0_ = (bitField0_ & ~0x00000002); + conditionListBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConditionListFieldBuilder() : null; + } else { + conditionListBuilder_.addAllMessages(other.conditionList_); + } + } + } + if (other.booleanOperator_ != 0) { + setBooleanOperatorValue(other.getBooleanOperatorValue()); + } + if (actionListBuilder_ == null) { + if (!other.actionList_.isEmpty()) { + if (actionList_.isEmpty()) { + actionList_ = other.actionList_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureActionListIsMutable(); + actionList_.addAll(other.actionList_); + } + onChanged(); + } + } else { + if (!other.actionList_.isEmpty()) { + if (actionListBuilder_.isEmpty()) { + actionListBuilder_.dispose(); + actionListBuilder_ = null; + actionList_ = other.actionList_; + bitField0_ = (bitField0_ & ~0x00000004); + actionListBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getActionListFieldBuilder() : null; + } else { + actionListBuilder_.addAllMessages(other.actionList_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -2076,11 +2426,11 @@ public final class Policy { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - policy.Policy.PolicyRuleEvent parsedMessage = null; + policy.Policy.PolicyRuleBasic parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (policy.Policy.PolicyRuleEvent) e.getUnfinishedMessage(); + parsedMessage = (policy.Policy.PolicyRuleBasic) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -2089,895 +2439,2707 @@ public final class Policy { } return this; } + private int bitField0_; - private context.ContextOuterClass.Event event_; + private policy.Policy.PolicyRuleId policyRuleId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> policyRuleIdBuilder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * @return Whether the policyRuleId field is set. */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public boolean hasPolicyRuleId() { + return policyRuleIdBuilder_ != null || policyRuleId_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * @return The policyRuleId. */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public policy.Policy.PolicyRuleId getPolicyRuleId() { + if (policyRuleIdBuilder_ == null) { + return policyRuleId_ == null ? policy.Policy.PolicyRuleId.getDefaultInstance() : policyRuleId_; } else { - return eventBuilder_.getMessage(); + return policyRuleIdBuilder_.getMessage(); } } /** - * <code>.context.Event event = 1;</code> + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public Builder setPolicyRuleId(policy.Policy.PolicyRuleId value) { + if (policyRuleIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + policyRuleId_ = value; onChanged(); } else { - eventBuilder_.setMessage(value); + policyRuleIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setPolicyRuleId( + policy.Policy.PolicyRuleId.Builder builderForValue) { + if (policyRuleIdBuilder_ == null) { + policyRuleId_ = builderForValue.build(); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + policyRuleIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> */ - public Builder mergeEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); + public Builder mergePolicyRuleId(policy.Policy.PolicyRuleId value) { + if (policyRuleIdBuilder_ == null) { + if (policyRuleId_ != null) { + policyRuleId_ = + policy.Policy.PolicyRuleId.newBuilder(policyRuleId_).mergeFrom(value).buildPartial(); } else { - event_ = value; + policyRuleId_ = value; } onChanged(); } else { - eventBuilder_.mergeFrom(value); + policyRuleIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder clearPolicyRuleId() { + if (policyRuleIdBuilder_ == null) { + policyRuleId_ = null; onChanged(); } else { - event_ = null; - eventBuilder_ = null; + policyRuleId_ = null; + policyRuleIdBuilder_ = null; } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { + public policy.Policy.PolicyRuleId.Builder getPolicyRuleIdBuilder() { onChanged(); - return getEventFieldBuilder().getBuilder(); + return getPolicyRuleIdFieldBuilder().getBuilder(); } /** - * <code>.context.Event event = 1;</code> + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdOrBuilder() { + if (policyRuleIdBuilder_ != null) { + return policyRuleIdBuilder_.getMessageOrBuilder(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + return policyRuleId_ == null ? + policy.Policy.PolicyRuleId.getDefaultInstance() : policyRuleId_; } } /** - * <code>.context.Event event = 1;</code> + * <code>.policy.PolicyRuleId policyRuleId = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> - getEventFieldBuilder() { - if (eventBuilder_ == null) { - eventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder>( - getEvent(), + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> + getPolicyRuleIdFieldBuilder() { + if (policyRuleIdBuilder_ == null) { + policyRuleIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder>( + getPolicyRuleId(), getParentForChildren(), isClean()); - event_ = null; + policyRuleId_ = null; } - return eventBuilder_; + return policyRuleIdBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + + private policy.Policy.PolicyRuleState policyRuleState_; + private com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleState, policy.Policy.PolicyRuleState.Builder, policy.Policy.PolicyRuleStateOrBuilder> policyRuleStateBuilder_; + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + * @return Whether the policyRuleState field is set. + */ + public boolean hasPolicyRuleState() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + * @return The policyRuleState. + */ + public policy.Policy.PolicyRuleState getPolicyRuleState() { + if (policyRuleStateBuilder_ == null) { + return policyRuleState_ == null ? policy.Policy.PolicyRuleState.getDefaultInstance() : policyRuleState_; + } else { + return policyRuleStateBuilder_.getMessage(); + } + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + public Builder setPolicyRuleState(policy.Policy.PolicyRuleState value) { + if (policyRuleStateBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + policyRuleState_ = value; + onChanged(); + } else { + policyRuleStateBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + public Builder setPolicyRuleState( + policy.Policy.PolicyRuleState.Builder builderForValue) { + if (policyRuleStateBuilder_ == null) { + policyRuleState_ = builderForValue.build(); + onChanged(); + } else { + policyRuleStateBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + public Builder mergePolicyRuleState(policy.Policy.PolicyRuleState value) { + if (policyRuleStateBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) && + policyRuleState_ != null && + policyRuleState_ != policy.Policy.PolicyRuleState.getDefaultInstance()) { + policyRuleState_ = + policy.Policy.PolicyRuleState.newBuilder(policyRuleState_).mergeFrom(value).buildPartial(); + } else { + policyRuleState_ = value; + } + onChanged(); + } else { + policyRuleStateBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + public Builder clearPolicyRuleState() { + if (policyRuleStateBuilder_ == null) { + policyRuleState_ = null; + onChanged(); + } else { + policyRuleStateBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + public policy.Policy.PolicyRuleState.Builder getPolicyRuleStateBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getPolicyRuleStateFieldBuilder().getBuilder(); + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + public policy.Policy.PolicyRuleStateOrBuilder getPolicyRuleStateOrBuilder() { + if (policyRuleStateBuilder_ != null) { + return policyRuleStateBuilder_.getMessageOrBuilder(); + } else { + return policyRuleState_ == null ? + policy.Policy.PolicyRuleState.getDefaultInstance() : policyRuleState_; + } + } + /** + * <code>optional .policy.PolicyRuleState policyRuleState = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleState, policy.Policy.PolicyRuleState.Builder, policy.Policy.PolicyRuleStateOrBuilder> + getPolicyRuleStateFieldBuilder() { + if (policyRuleStateBuilder_ == null) { + policyRuleStateBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleState, policy.Policy.PolicyRuleState.Builder, policy.Policy.PolicyRuleStateOrBuilder>( + getPolicyRuleState(), + getParentForChildren(), + isClean()); + policyRuleState_ = null; + } + return policyRuleStateBuilder_; } + private int priority_ ; + /** + * <code>uint32 priority = 3;</code> + * @return The priority. + */ @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + public int getPriority() { + return priority_; + } + /** + * <code>uint32 priority = 3;</code> + * @param value The priority to set. + * @return This builder for chaining. + */ + public Builder setPriority(int value) { + + priority_ = value; + onChanged(); + return this; + } + /** + * <code>uint32 priority = 3;</code> + * @return This builder for chaining. + */ + public Builder clearPriority() { + + priority_ = 0; + onChanged(); + return this; } + private java.util.List<policy.PolicyCondition.PolicyRuleCondition> conditionList_ = + java.util.Collections.emptyList(); + private void ensureConditionListIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + conditionList_ = new java.util.ArrayList<policy.PolicyCondition.PolicyRuleCondition>(conditionList_); + bitField0_ |= 0x00000002; + } + } - // @@protoc_insertion_point(builder_scope:policy.PolicyRuleEvent) - } + private com.google.protobuf.RepeatedFieldBuilderV3< + policy.PolicyCondition.PolicyRuleCondition, policy.PolicyCondition.PolicyRuleCondition.Builder, policy.PolicyCondition.PolicyRuleConditionOrBuilder> conditionListBuilder_; + + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public java.util.List<policy.PolicyCondition.PolicyRuleCondition> getConditionListList() { + if (conditionListBuilder_ == null) { + return java.util.Collections.unmodifiableList(conditionList_); + } else { + return conditionListBuilder_.getMessageList(); + } + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public int getConditionListCount() { + if (conditionListBuilder_ == null) { + return conditionList_.size(); + } else { + return conditionListBuilder_.getCount(); + } + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public policy.PolicyCondition.PolicyRuleCondition getConditionList(int index) { + if (conditionListBuilder_ == null) { + return conditionList_.get(index); + } else { + return conditionListBuilder_.getMessage(index); + } + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder setConditionList( + int index, policy.PolicyCondition.PolicyRuleCondition value) { + if (conditionListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionListIsMutable(); + conditionList_.set(index, value); + onChanged(); + } else { + conditionListBuilder_.setMessage(index, value); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder setConditionList( + int index, policy.PolicyCondition.PolicyRuleCondition.Builder builderForValue) { + if (conditionListBuilder_ == null) { + ensureConditionListIsMutable(); + conditionList_.set(index, builderForValue.build()); + onChanged(); + } else { + conditionListBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder addConditionList(policy.PolicyCondition.PolicyRuleCondition value) { + if (conditionListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionListIsMutable(); + conditionList_.add(value); + onChanged(); + } else { + conditionListBuilder_.addMessage(value); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder addConditionList( + int index, policy.PolicyCondition.PolicyRuleCondition value) { + if (conditionListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionListIsMutable(); + conditionList_.add(index, value); + onChanged(); + } else { + conditionListBuilder_.addMessage(index, value); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder addConditionList( + policy.PolicyCondition.PolicyRuleCondition.Builder builderForValue) { + if (conditionListBuilder_ == null) { + ensureConditionListIsMutable(); + conditionList_.add(builderForValue.build()); + onChanged(); + } else { + conditionListBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder addConditionList( + int index, policy.PolicyCondition.PolicyRuleCondition.Builder builderForValue) { + if (conditionListBuilder_ == null) { + ensureConditionListIsMutable(); + conditionList_.add(index, builderForValue.build()); + onChanged(); + } else { + conditionListBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder addAllConditionList( + java.lang.Iterable<? extends policy.PolicyCondition.PolicyRuleCondition> values) { + if (conditionListBuilder_ == null) { + ensureConditionListIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, conditionList_); + onChanged(); + } else { + conditionListBuilder_.addAllMessages(values); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder clearConditionList() { + if (conditionListBuilder_ == null) { + conditionList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + conditionListBuilder_.clear(); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public Builder removeConditionList(int index) { + if (conditionListBuilder_ == null) { + ensureConditionListIsMutable(); + conditionList_.remove(index); + onChanged(); + } else { + conditionListBuilder_.remove(index); + } + return this; + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public policy.PolicyCondition.PolicyRuleCondition.Builder getConditionListBuilder( + int index) { + return getConditionListFieldBuilder().getBuilder(index); + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public policy.PolicyCondition.PolicyRuleConditionOrBuilder getConditionListOrBuilder( + int index) { + if (conditionListBuilder_ == null) { + return conditionList_.get(index); } else { + return conditionListBuilder_.getMessageOrBuilder(index); + } + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public java.util.List<? extends policy.PolicyCondition.PolicyRuleConditionOrBuilder> + getConditionListOrBuilderList() { + if (conditionListBuilder_ != null) { + return conditionListBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(conditionList_); + } + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public policy.PolicyCondition.PolicyRuleCondition.Builder addConditionListBuilder() { + return getConditionListFieldBuilder().addBuilder( + policy.PolicyCondition.PolicyRuleCondition.getDefaultInstance()); + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public policy.PolicyCondition.PolicyRuleCondition.Builder addConditionListBuilder( + int index) { + return getConditionListFieldBuilder().addBuilder( + index, policy.PolicyCondition.PolicyRuleCondition.getDefaultInstance()); + } + /** + * <pre> + * Event-Condition-Action (ECA) model + * </pre> + * + * <code>repeated .policy.PolicyRuleCondition conditionList = 4;</code> + */ + public java.util.List<policy.PolicyCondition.PolicyRuleCondition.Builder> + getConditionListBuilderList() { + return getConditionListFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + policy.PolicyCondition.PolicyRuleCondition, policy.PolicyCondition.PolicyRuleCondition.Builder, policy.PolicyCondition.PolicyRuleConditionOrBuilder> + getConditionListFieldBuilder() { + if (conditionListBuilder_ == null) { + conditionListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + policy.PolicyCondition.PolicyRuleCondition, policy.PolicyCondition.PolicyRuleCondition.Builder, policy.PolicyCondition.PolicyRuleConditionOrBuilder>( + conditionList_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + conditionList_ = null; + } + return conditionListBuilder_; + } + + private int booleanOperator_ = 0; + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @return The enum numeric value on the wire for booleanOperator. + */ + @java.lang.Override public int getBooleanOperatorValue() { + return booleanOperator_; + } + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @param value The enum numeric value on the wire for booleanOperator to set. + * @return This builder for chaining. + */ + public Builder setBooleanOperatorValue(int value) { + + booleanOperator_ = value; + onChanged(); + return this; + } + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @return The booleanOperator. + */ + @java.lang.Override + public policy.PolicyCondition.BooleanOperator getBooleanOperator() { + @SuppressWarnings("deprecation") + policy.PolicyCondition.BooleanOperator result = policy.PolicyCondition.BooleanOperator.valueOf(booleanOperator_); + return result == null ? policy.PolicyCondition.BooleanOperator.UNRECOGNIZED : result; + } + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @param value The booleanOperator to set. + * @return This builder for chaining. + */ + public Builder setBooleanOperator(policy.PolicyCondition.BooleanOperator value) { + if (value == null) { + throw new NullPointerException(); + } + + booleanOperator_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <pre> + * Evaluation operator to be used + * </pre> + * + * <code>.policy.BooleanOperator booleanOperator = 5;</code> + * @return This builder for chaining. + */ + public Builder clearBooleanOperator() { + + booleanOperator_ = 0; + onChanged(); + return this; + } + + private java.util.List<policy.PolicyAction.PolicyRuleAction> actionList_ = + java.util.Collections.emptyList(); + private void ensureActionListIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + actionList_ = new java.util.ArrayList<policy.PolicyAction.PolicyRuleAction>(actionList_); + bitField0_ |= 0x00000004; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + policy.PolicyAction.PolicyRuleAction, policy.PolicyAction.PolicyRuleAction.Builder, policy.PolicyAction.PolicyRuleActionOrBuilder> actionListBuilder_; + + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public java.util.List<policy.PolicyAction.PolicyRuleAction> getActionListList() { + if (actionListBuilder_ == null) { + return java.util.Collections.unmodifiableList(actionList_); + } else { + return actionListBuilder_.getMessageList(); + } + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public int getActionListCount() { + if (actionListBuilder_ == null) { + return actionList_.size(); + } else { + return actionListBuilder_.getCount(); + } + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public policy.PolicyAction.PolicyRuleAction getActionList(int index) { + if (actionListBuilder_ == null) { + return actionList_.get(index); + } else { + return actionListBuilder_.getMessage(index); + } + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder setActionList( + int index, policy.PolicyAction.PolicyRuleAction value) { + if (actionListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureActionListIsMutable(); + actionList_.set(index, value); + onChanged(); + } else { + actionListBuilder_.setMessage(index, value); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder setActionList( + int index, policy.PolicyAction.PolicyRuleAction.Builder builderForValue) { + if (actionListBuilder_ == null) { + ensureActionListIsMutable(); + actionList_.set(index, builderForValue.build()); + onChanged(); + } else { + actionListBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder addActionList(policy.PolicyAction.PolicyRuleAction value) { + if (actionListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureActionListIsMutable(); + actionList_.add(value); + onChanged(); + } else { + actionListBuilder_.addMessage(value); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder addActionList( + int index, policy.PolicyAction.PolicyRuleAction value) { + if (actionListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureActionListIsMutable(); + actionList_.add(index, value); + onChanged(); + } else { + actionListBuilder_.addMessage(index, value); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder addActionList( + policy.PolicyAction.PolicyRuleAction.Builder builderForValue) { + if (actionListBuilder_ == null) { + ensureActionListIsMutable(); + actionList_.add(builderForValue.build()); + onChanged(); + } else { + actionListBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder addActionList( + int index, policy.PolicyAction.PolicyRuleAction.Builder builderForValue) { + if (actionListBuilder_ == null) { + ensureActionListIsMutable(); + actionList_.add(index, builderForValue.build()); + onChanged(); + } else { + actionListBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder addAllActionList( + java.lang.Iterable<? extends policy.PolicyAction.PolicyRuleAction> values) { + if (actionListBuilder_ == null) { + ensureActionListIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, actionList_); + onChanged(); + } else { + actionListBuilder_.addAllMessages(values); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder clearActionList() { + if (actionListBuilder_ == null) { + actionList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + actionListBuilder_.clear(); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public Builder removeActionList(int index) { + if (actionListBuilder_ == null) { + ensureActionListIsMutable(); + actionList_.remove(index); + onChanged(); + } else { + actionListBuilder_.remove(index); + } + return this; + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public policy.PolicyAction.PolicyRuleAction.Builder getActionListBuilder( + int index) { + return getActionListFieldBuilder().getBuilder(index); + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public policy.PolicyAction.PolicyRuleActionOrBuilder getActionListOrBuilder( + int index) { + if (actionListBuilder_ == null) { + return actionList_.get(index); } else { + return actionListBuilder_.getMessageOrBuilder(index); + } + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public java.util.List<? extends policy.PolicyAction.PolicyRuleActionOrBuilder> + getActionListOrBuilderList() { + if (actionListBuilder_ != null) { + return actionListBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(actionList_); + } + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public policy.PolicyAction.PolicyRuleAction.Builder addActionListBuilder() { + return getActionListFieldBuilder().addBuilder( + policy.PolicyAction.PolicyRuleAction.getDefaultInstance()); + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public policy.PolicyAction.PolicyRuleAction.Builder addActionListBuilder( + int index) { + return getActionListFieldBuilder().addBuilder( + index, policy.PolicyAction.PolicyRuleAction.getDefaultInstance()); + } + /** + * <pre> + * One or more actions should be applied + * </pre> + * + * <code>repeated .policy.PolicyRuleAction actionList = 6;</code> + */ + public java.util.List<policy.PolicyAction.PolicyRuleAction.Builder> + getActionListBuilderList() { + return getActionListFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + policy.PolicyAction.PolicyRuleAction, policy.PolicyAction.PolicyRuleAction.Builder, policy.PolicyAction.PolicyRuleActionOrBuilder> + getActionListFieldBuilder() { + if (actionListBuilder_ == null) { + actionListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + policy.PolicyAction.PolicyRuleAction, policy.PolicyAction.PolicyRuleAction.Builder, policy.PolicyAction.PolicyRuleActionOrBuilder>( + actionList_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + actionList_ = null; + } + return actionListBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:policy.PolicyRuleBasic) + } + + // @@protoc_insertion_point(class_scope:policy.PolicyRuleBasic) + private static final policy.Policy.PolicyRuleBasic DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new policy.Policy.PolicyRuleBasic(); + } + + public static policy.Policy.PolicyRuleBasic getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<PolicyRuleBasic> + PARSER = new com.google.protobuf.AbstractParser<PolicyRuleBasic>() { + @java.lang.Override + public PolicyRuleBasic parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new PolicyRuleBasic(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<PolicyRuleBasic> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<PolicyRuleBasic> getParserForType() { + return PARSER; + } + + @java.lang.Override + public policy.Policy.PolicyRuleBasic getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface PolicyRuleServiceOrBuilder extends + // @@protoc_insertion_point(interface_extends:policy.PolicyRuleService) + com.google.protobuf.MessageOrBuilder { + + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return Whether the policyRuleBasic field is set. + */ + boolean hasPolicyRuleBasic(); + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return The policyRuleBasic. + */ + policy.Policy.PolicyRuleBasic getPolicyRuleBasic(); + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + policy.Policy.PolicyRuleBasicOrBuilder getPolicyRuleBasicOrBuilder(); + + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + * @return Whether the serviceId field is set. + */ + boolean hasServiceId(); + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + * @return The serviceId. + */ + context.ContextOuterClass.ServiceId getServiceId(); + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + java.util.List<context.ContextOuterClass.DeviceId> + getDeviceListList(); + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + context.ContextOuterClass.DeviceId getDeviceList(int index); + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + int getDeviceListCount(); + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceListOrBuilderList(); + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( + int index); + } + /** + * <pre> + * Service-oriented policy rule + * </pre> + * + * Protobuf type {@code policy.PolicyRuleService} + */ + public static final class PolicyRuleService extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:policy.PolicyRuleService) + PolicyRuleServiceOrBuilder { + private static final long serialVersionUID = 0L; + // Use PolicyRuleService.newBuilder() to construct. + private PolicyRuleService(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private PolicyRuleService() { + deviceList_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new PolicyRuleService(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private PolicyRuleService( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + policy.Policy.PolicyRuleBasic.Builder subBuilder = null; + if (policyRuleBasic_ != null) { + subBuilder = policyRuleBasic_.toBuilder(); + } + policyRuleBasic_ = input.readMessage(policy.Policy.PolicyRuleBasic.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(policyRuleBasic_); + policyRuleBasic_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.ServiceId.Builder subBuilder = null; + if (serviceId_ != null) { + subBuilder = serviceId_.toBuilder(); + } + serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceId_); + serviceId_ = subBuilder.buildPartial(); + } + + break; + } + case 26: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + deviceList_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); + mutable_bitField0_ |= 0x00000001; + } + deviceList_.add( + input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry)); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + deviceList_ = java.util.Collections.unmodifiableList(deviceList_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return policy.Policy.internal_static_policy_PolicyRuleService_descriptor; + } - // @@protoc_insertion_point(class_scope:policy.PolicyRuleEvent) - private static final policy.Policy.PolicyRuleEvent DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new policy.Policy.PolicyRuleEvent(); + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return policy.Policy.internal_static_policy_PolicyRuleService_fieldAccessorTable + .ensureFieldAccessorsInitialized( + policy.Policy.PolicyRuleService.class, policy.Policy.PolicyRuleService.Builder.class); + } + + public static final int POLICYRULEBASIC_FIELD_NUMBER = 1; + private policy.Policy.PolicyRuleBasic policyRuleBasic_; + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return Whether the policyRuleBasic field is set. + */ + @java.lang.Override + public boolean hasPolicyRuleBasic() { + return policyRuleBasic_ != null; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return The policyRuleBasic. + */ + @java.lang.Override + public policy.Policy.PolicyRuleBasic getPolicyRuleBasic() { + return policyRuleBasic_ == null ? policy.Policy.PolicyRuleBasic.getDefaultInstance() : policyRuleBasic_; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + @java.lang.Override + public policy.Policy.PolicyRuleBasicOrBuilder getPolicyRuleBasicOrBuilder() { + return getPolicyRuleBasic(); + } + + public static final int SERVICEID_FIELD_NUMBER = 2; + private context.ContextOuterClass.ServiceId serviceId_; + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + * @return Whether the serviceId field is set. + */ + @java.lang.Override + public boolean hasServiceId() { + return serviceId_ != null; + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + * @return The serviceId. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceId getServiceId() { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + return getServiceId(); + } + + public static final int DEVICELIST_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.DeviceId> deviceList_; + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceListList() { + return deviceList_; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceListOrBuilderList() { + return deviceList_; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + @java.lang.Override + public int getDeviceListCount() { + return deviceList_.size(); + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getDeviceList(int index) { + return deviceList_.get(index); + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( + int index) { + return deviceList_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (policyRuleBasic_ != null) { + output.writeMessage(1, getPolicyRuleBasic()); + } + if (serviceId_ != null) { + output.writeMessage(2, getServiceId()); + } + for (int i = 0; i < deviceList_.size(); i++) { + output.writeMessage(3, deviceList_.get(i)); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (policyRuleBasic_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getPolicyRuleBasic()); + } + if (serviceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getServiceId()); + } + for (int i = 0; i < deviceList_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, deviceList_.get(i)); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof policy.Policy.PolicyRuleService)) { + return super.equals(obj); + } + policy.Policy.PolicyRuleService other = (policy.Policy.PolicyRuleService) obj; + + if (hasPolicyRuleBasic() != other.hasPolicyRuleBasic()) return false; + if (hasPolicyRuleBasic()) { + if (!getPolicyRuleBasic() + .equals(other.getPolicyRuleBasic())) return false; + } + if (hasServiceId() != other.hasServiceId()) return false; + if (hasServiceId()) { + if (!getServiceId() + .equals(other.getServiceId())) return false; + } + if (!getDeviceListList() + .equals(other.getDeviceListList())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasPolicyRuleBasic()) { + hash = (37 * hash) + POLICYRULEBASIC_FIELD_NUMBER; + hash = (53 * hash) + getPolicyRuleBasic().hashCode(); + } + if (hasServiceId()) { + hash = (37 * hash) + SERVICEID_FIELD_NUMBER; + hash = (53 * hash) + getServiceId().hashCode(); + } + if (getDeviceListCount() > 0) { + hash = (37 * hash) + DEVICELIST_FIELD_NUMBER; + hash = (53 * hash) + getDeviceListList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static policy.Policy.PolicyRuleService parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleService parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleService parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleService parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleService parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleService parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleService parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleService parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); } - - public static policy.Policy.PolicyRuleEvent getDefaultInstance() { - return DEFAULT_INSTANCE; + public static policy.Policy.PolicyRuleService parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); } - - private static final com.google.protobuf.Parser<PolicyRuleEvent> - PARSER = new com.google.protobuf.AbstractParser<PolicyRuleEvent>() { - @java.lang.Override - public PolicyRuleEvent parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new PolicyRuleEvent(input, extensionRegistry); - } - }; - - public static com.google.protobuf.Parser<PolicyRuleEvent> parser() { - return PARSER; + public static policy.Policy.PolicyRuleService parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static policy.Policy.PolicyRuleService parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleService parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override - public com.google.protobuf.Parser<PolicyRuleEvent> getParserForType() { - return PARSER; + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(policy.Policy.PolicyRuleService prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - @java.lang.Override - public policy.Policy.PolicyRuleEvent getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); } - } - - public interface PolicyRuleOrBuilder extends - // @@protoc_insertion_point(interface_extends:policy.PolicyRule) - com.google.protobuf.MessageOrBuilder { - - /** - * <pre> - * Basic policy rule attributes - * </pre> - * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> - * @return Whether the policyRuleId field is set. - */ - boolean hasPolicyRuleId(); - /** - * <pre> - * Basic policy rule attributes - * </pre> - * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> - * @return The policyRuleId. - */ - policy.Policy.PolicyRuleId getPolicyRuleId(); + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } /** * <pre> - * Basic policy rule attributes + * Service-oriented policy rule * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * Protobuf type {@code policy.PolicyRuleService} */ - policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdOrBuilder(); + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:policy.PolicyRuleService) + policy.Policy.PolicyRuleServiceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return policy.Policy.internal_static_policy_PolicyRuleService_descriptor; + } - /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @return The enum numeric value on the wire for policyRuleType. - */ - int getPolicyRuleTypeValue(); - /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @return The policyRuleType. - */ - policy.Policy.PolicyRuleType getPolicyRuleType(); + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return policy.Policy.internal_static_policy_PolicyRuleService_fieldAccessorTable + .ensureFieldAccessorsInitialized( + policy.Policy.PolicyRuleService.class, policy.Policy.PolicyRuleService.Builder.class); + } - /** - * <code>uint32 priority = 3;</code> - * @return The priority. - */ - int getPriority(); + // Construct using policy.Policy.PolicyRuleService.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - * @return Whether the event field is set. - */ - boolean hasEvent(); - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - * @return The event. - */ - policy.Policy.PolicyRuleEvent getEvent(); - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - policy.Policy.PolicyRuleEventOrBuilder getEventOrBuilder(); + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getDeviceListFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (policyRuleBasicBuilder_ == null) { + policyRuleBasic_ = null; + } else { + policyRuleBasic_ = null; + policyRuleBasicBuilder_ = null; + } + if (serviceIdBuilder_ == null) { + serviceId_ = null; + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } + if (deviceListBuilder_ == null) { + deviceList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + deviceListBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return policy.Policy.internal_static_policy_PolicyRuleService_descriptor; + } + + @java.lang.Override + public policy.Policy.PolicyRuleService getDefaultInstanceForType() { + return policy.Policy.PolicyRuleService.getDefaultInstance(); + } + + @java.lang.Override + public policy.Policy.PolicyRuleService build() { + policy.Policy.PolicyRuleService result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public policy.Policy.PolicyRuleService buildPartial() { + policy.Policy.PolicyRuleService result = new policy.Policy.PolicyRuleService(this); + int from_bitField0_ = bitField0_; + if (policyRuleBasicBuilder_ == null) { + result.policyRuleBasic_ = policyRuleBasic_; + } else { + result.policyRuleBasic_ = policyRuleBasicBuilder_.build(); + } + if (serviceIdBuilder_ == null) { + result.serviceId_ = serviceId_; + } else { + result.serviceId_ = serviceIdBuilder_.build(); + } + if (deviceListBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + deviceList_ = java.util.Collections.unmodifiableList(deviceList_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.deviceList_ = deviceList_; + } else { + result.deviceList_ = deviceListBuilder_.build(); + } + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof policy.Policy.PolicyRuleService) { + return mergeFrom((policy.Policy.PolicyRuleService)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(policy.Policy.PolicyRuleService other) { + if (other == policy.Policy.PolicyRuleService.getDefaultInstance()) return this; + if (other.hasPolicyRuleBasic()) { + mergePolicyRuleBasic(other.getPolicyRuleBasic()); + } + if (other.hasServiceId()) { + mergeServiceId(other.getServiceId()); + } + if (deviceListBuilder_ == null) { + if (!other.deviceList_.isEmpty()) { + if (deviceList_.isEmpty()) { + deviceList_ = other.deviceList_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureDeviceListIsMutable(); + deviceList_.addAll(other.deviceList_); + } + onChanged(); + } + } else { + if (!other.deviceList_.isEmpty()) { + if (deviceListBuilder_.isEmpty()) { + deviceListBuilder_.dispose(); + deviceListBuilder_ = null; + deviceList_ = other.deviceList_; + bitField0_ = (bitField0_ & ~0x00000001); + deviceListBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getDeviceListFieldBuilder() : null; + } else { + deviceListBuilder_.addAllMessages(other.deviceList_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - java.util.List<policy.PolicyCondition.PolicyRuleCondition> - getConditionListList(); - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - policy.PolicyCondition.PolicyRuleCondition getConditionList(int index); - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - int getConditionListCount(); - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - java.util.List<? extends policy.PolicyCondition.PolicyRuleConditionOrBuilder> - getConditionListOrBuilderList(); - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - policy.PolicyCondition.PolicyRuleConditionOrBuilder getConditionListOrBuilder( - int index); + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + policy.Policy.PolicyRuleService parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (policy.Policy.PolicyRuleService) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @return The enum numeric value on the wire for booleanOperator. - */ - int getBooleanOperatorValue(); - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @return The booleanOperator. - */ - policy.PolicyCondition.BooleanOperator getBooleanOperator(); + private policy.Policy.PolicyRuleBasic policyRuleBasic_; + private com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleBasic, policy.Policy.PolicyRuleBasic.Builder, policy.Policy.PolicyRuleBasicOrBuilder> policyRuleBasicBuilder_; + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return Whether the policyRuleBasic field is set. + */ + public boolean hasPolicyRuleBasic() { + return policyRuleBasicBuilder_ != null || policyRuleBasic_ != null; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return The policyRuleBasic. + */ + public policy.Policy.PolicyRuleBasic getPolicyRuleBasic() { + if (policyRuleBasicBuilder_ == null) { + return policyRuleBasic_ == null ? policy.Policy.PolicyRuleBasic.getDefaultInstance() : policyRuleBasic_; + } else { + return policyRuleBasicBuilder_.getMessage(); + } + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public Builder setPolicyRuleBasic(policy.Policy.PolicyRuleBasic value) { + if (policyRuleBasicBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + policyRuleBasic_ = value; + onChanged(); + } else { + policyRuleBasicBuilder_.setMessage(value); + } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - java.util.List<policy.PolicyAction.PolicyRuleAction> - getActionListList(); - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - policy.PolicyAction.PolicyRuleAction getActionList(int index); - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - int getActionListCount(); - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - java.util.List<? extends policy.PolicyAction.PolicyRuleActionOrBuilder> - getActionListOrBuilderList(); - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - policy.PolicyAction.PolicyRuleActionOrBuilder getActionListOrBuilder( - int index); + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public Builder setPolicyRuleBasic( + policy.Policy.PolicyRuleBasic.Builder builderForValue) { + if (policyRuleBasicBuilder_ == null) { + policyRuleBasic_ = builderForValue.build(); + onChanged(); + } else { + policyRuleBasicBuilder_.setMessage(builderForValue.build()); + } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - * @return Whether the serviceId field is set. - */ - boolean hasServiceId(); - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - * @return The serviceId. - */ - context.ContextOuterClass.ServiceId getServiceId(); - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public Builder mergePolicyRuleBasic(policy.Policy.PolicyRuleBasic value) { + if (policyRuleBasicBuilder_ == null) { + if (policyRuleBasic_ != null) { + policyRuleBasic_ = + policy.Policy.PolicyRuleBasic.newBuilder(policyRuleBasic_).mergeFrom(value).buildPartial(); + } else { + policyRuleBasic_ = value; + } + onChanged(); + } else { + policyRuleBasicBuilder_.mergeFrom(value); + } - /** - * <code>repeated .context.DeviceId deviceList = 9;</code> - */ - java.util.List<context.ContextOuterClass.DeviceId> - getDeviceListList(); - /** - * <code>repeated .context.DeviceId deviceList = 9;</code> - */ - context.ContextOuterClass.DeviceId getDeviceList(int index); - /** - * <code>repeated .context.DeviceId deviceList = 9;</code> - */ - int getDeviceListCount(); - /** - * <code>repeated .context.DeviceId deviceList = 9;</code> - */ - java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceListOrBuilderList(); - /** - * <code>repeated .context.DeviceId deviceList = 9;</code> - */ - context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( - int index); - } - /** - * <pre> - * Policy rule partially complies with IETF’s: - * RFC 3060: https://datatracker.ietf.org/doc/html/rfc3060 - * RFC 3460: https://datatracker.ietf.org/doc/html/rfc3460 - * Enhanced with a policy rule event according to the ECA model - * </pre> - * - * Protobuf type {@code policy.PolicyRule} - */ - public static final class PolicyRule extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:policy.PolicyRule) - PolicyRuleOrBuilder { - private static final long serialVersionUID = 0L; - // Use PolicyRule.newBuilder() to construct. - private PolicyRule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private PolicyRule() { - policyRuleType_ = 0; - conditionList_ = java.util.Collections.emptyList(); - booleanOperator_ = 0; - actionList_ = java.util.Collections.emptyList(); - deviceList_ = java.util.Collections.emptyList(); - } + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public Builder clearPolicyRuleBasic() { + if (policyRuleBasicBuilder_ == null) { + policyRuleBasic_ = null; + onChanged(); + } else { + policyRuleBasic_ = null; + policyRuleBasicBuilder_ = null; + } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new PolicyRule(); - } + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public policy.Policy.PolicyRuleBasic.Builder getPolicyRuleBasicBuilder() { + + onChanged(); + return getPolicyRuleBasicFieldBuilder().getBuilder(); + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public policy.Policy.PolicyRuleBasicOrBuilder getPolicyRuleBasicOrBuilder() { + if (policyRuleBasicBuilder_ != null) { + return policyRuleBasicBuilder_.getMessageOrBuilder(); + } else { + return policyRuleBasic_ == null ? + policy.Policy.PolicyRuleBasic.getDefaultInstance() : policyRuleBasic_; + } + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleBasic, policy.Policy.PolicyRuleBasic.Builder, policy.Policy.PolicyRuleBasicOrBuilder> + getPolicyRuleBasicFieldBuilder() { + if (policyRuleBasicBuilder_ == null) { + policyRuleBasicBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleBasic, policy.Policy.PolicyRuleBasic.Builder, policy.Policy.PolicyRuleBasicOrBuilder>( + getPolicyRuleBasic(), + getParentForChildren(), + isClean()); + policyRuleBasic_ = null; + } + return policyRuleBasicBuilder_; + } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private PolicyRule( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - this(); - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + private context.ContextOuterClass.ServiceId serviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + * @return Whether the serviceId field is set. + */ + public boolean hasServiceId() { + return serviceIdBuilder_ != null || serviceId_ != null; } - int mutable_bitField0_ = 0; - com.google.protobuf.UnknownFieldSet.Builder unknownFields = - com.google.protobuf.UnknownFieldSet.newBuilder(); - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: { - policy.Policy.PolicyRuleId.Builder subBuilder = null; - if (policyRuleId_ != null) { - subBuilder = policyRuleId_.toBuilder(); - } - policyRuleId_ = input.readMessage(policy.Policy.PolicyRuleId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(policyRuleId_); - policyRuleId_ = subBuilder.buildPartial(); - } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + * @return The serviceId. + */ + public context.ContextOuterClass.ServiceId getServiceId() { + if (serviceIdBuilder_ == null) { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } else { + return serviceIdBuilder_.getMessage(); + } + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + public Builder setServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + serviceId_ = value; + onChanged(); + } else { + serviceIdBuilder_.setMessage(value); + } - break; - } - case 16: { - int rawValue = input.readEnum(); + return this; + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + public Builder setServiceId( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdBuilder_ == null) { + serviceId_ = builderForValue.build(); + onChanged(); + } else { + serviceIdBuilder_.setMessage(builderForValue.build()); + } - policyRuleType_ = rawValue; - break; - } - case 24: { + return this; + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { + if (serviceId_ != null) { + serviceId_ = + context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial(); + } else { + serviceId_ = value; + } + onChanged(); + } else { + serviceIdBuilder_.mergeFrom(value); + } - priority_ = input.readUInt32(); - break; - } - case 34: { - policy.Policy.PolicyRuleEvent.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); - } - event_ = input.readMessage(policy.Policy.PolicyRuleEvent.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); - } + return this; + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + public Builder clearServiceId() { + if (serviceIdBuilder_ == null) { + serviceId_ = null; + onChanged(); + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } - break; - } - case 42: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - conditionList_ = new java.util.ArrayList<policy.PolicyCondition.PolicyRuleCondition>(); - mutable_bitField0_ |= 0x00000001; - } - conditionList_.add( - input.readMessage(policy.PolicyCondition.PolicyRuleCondition.parser(), extensionRegistry)); - break; - } - case 48: { - int rawValue = input.readEnum(); + return this; + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { + + onChanged(); + return getServiceIdFieldBuilder().getBuilder(); + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + if (serviceIdBuilder_ != null) { + return serviceIdBuilder_.getMessageOrBuilder(); + } else { + return serviceId_ == null ? + context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } + } + /** + * <pre> + * Affected service and (some of) its device(s) + * </pre> + * + * <code>.context.ServiceId serviceId = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdFieldBuilder() { + if (serviceIdBuilder_ == null) { + serviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( + getServiceId(), + getParentForChildren(), + isClean()); + serviceId_ = null; + } + return serviceIdBuilder_; + } - booleanOperator_ = rawValue; - break; - } - case 58: { - if (!((mutable_bitField0_ & 0x00000002) != 0)) { - actionList_ = new java.util.ArrayList<policy.PolicyAction.PolicyRuleAction>(); - mutable_bitField0_ |= 0x00000002; - } - actionList_.add( - input.readMessage(policy.PolicyAction.PolicyRuleAction.parser(), extensionRegistry)); - break; - } - case 66: { - context.ContextOuterClass.ServiceId.Builder subBuilder = null; - if (serviceId_ != null) { - subBuilder = serviceId_.toBuilder(); - } - serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(serviceId_); - serviceId_ = subBuilder.buildPartial(); - } + private java.util.List<context.ContextOuterClass.DeviceId> deviceList_ = + java.util.Collections.emptyList(); + private void ensureDeviceListIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + deviceList_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceList_); + bitField0_ |= 0x00000001; + } + } - break; - } - case 74: { - if (!((mutable_bitField0_ & 0x00000004) != 0)) { - deviceList_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); - mutable_bitField0_ |= 0x00000004; - } - deviceList_.add( - input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry)); - break; - } - default: { - if (!parseUnknownField( - input, unknownFields, extensionRegistry, tag)) { - done = true; - } - break; - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceListBuilder_; + + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceListList() { + if (deviceListBuilder_ == null) { + return java.util.Collections.unmodifiableList(deviceList_); + } else { + return deviceListBuilder_.getMessageList(); + } + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public int getDeviceListCount() { + if (deviceListBuilder_ == null) { + return deviceList_.size(); + } else { + return deviceListBuilder_.getCount(); + } + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public context.ContextOuterClass.DeviceId getDeviceList(int index) { + if (deviceListBuilder_ == null) { + return deviceList_.get(index); + } else { + return deviceListBuilder_.getMessage(index); + } + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder setDeviceList( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureDeviceListIsMutable(); + deviceList_.set(index, value); + onChanged(); + } else { + deviceListBuilder_.setMessage(index, value); } - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(this); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException( - e).setUnfinishedMessage(this); - } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - conditionList_ = java.util.Collections.unmodifiableList(conditionList_); + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder setDeviceList( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.set(index, builderForValue.build()); + onChanged(); + } else { + deviceListBuilder_.setMessage(index, builderForValue.build()); } - if (((mutable_bitField0_ & 0x00000002) != 0)) { - actionList_ = java.util.Collections.unmodifiableList(actionList_); + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder addDeviceList(context.ContextOuterClass.DeviceId value) { + if (deviceListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceListIsMutable(); + deviceList_.add(value); + onChanged(); + } else { + deviceListBuilder_.addMessage(value); } - if (((mutable_bitField0_ & 0x00000004) != 0)) { - deviceList_ = java.util.Collections.unmodifiableList(deviceList_); + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder addDeviceList( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceListIsMutable(); + deviceList_.add(index, value); + onChanged(); + } else { + deviceListBuilder_.addMessage(index, value); } - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder addDeviceList( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.add(builderForValue.build()); + onChanged(); + } else { + deviceListBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder addDeviceList( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.add(index, builderForValue.build()); + onChanged(); + } else { + deviceListBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder addAllDeviceList( + java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, deviceList_); + onChanged(); + } else { + deviceListBuilder_.addAllMessages(values); + } + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder clearDeviceList() { + if (deviceListBuilder_ == null) { + deviceList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + deviceListBuilder_.clear(); + } + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public Builder removeDeviceList(int index) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.remove(index); + onChanged(); + } else { + deviceListBuilder_.remove(index); + } + return this; + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getDeviceListBuilder( + int index) { + return getDeviceListFieldBuilder().getBuilder(index); + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( + int index) { + if (deviceListBuilder_ == null) { + return deviceList_.get(index); } else { + return deviceListBuilder_.getMessageOrBuilder(index); + } + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceListOrBuilderList() { + if (deviceListBuilder_ != null) { + return deviceListBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(deviceList_); + } + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceListBuilder() { + return getDeviceListFieldBuilder().addBuilder( + context.ContextOuterClass.DeviceId.getDefaultInstance()); + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceListBuilder( + int index) { + return getDeviceListFieldBuilder().addBuilder( + index, context.ContextOuterClass.DeviceId.getDefaultInstance()); + } + /** + * <pre> + * List of devices this service is traversing (not exhaustive) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 3;</code> + */ + public java.util.List<context.ContextOuterClass.DeviceId.Builder> + getDeviceListBuilderList() { + return getDeviceListFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceListFieldBuilder() { + if (deviceListBuilder_ == null) { + deviceListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + deviceList_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + deviceList_ = null; + } + return deviceListBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:policy.PolicyRuleService) } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return policy.Policy.internal_static_policy_PolicyRule_descriptor; + + // @@protoc_insertion_point(class_scope:policy.PolicyRuleService) + private static final policy.Policy.PolicyRuleService DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new policy.Policy.PolicyRuleService(); } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return policy.Policy.internal_static_policy_PolicyRule_fieldAccessorTable - .ensureFieldAccessorsInitialized( - policy.Policy.PolicyRule.class, policy.Policy.PolicyRule.Builder.class); + public static policy.Policy.PolicyRuleService getDefaultInstance() { + return DEFAULT_INSTANCE; } - public static final int POLICYRULEID_FIELD_NUMBER = 1; - private policy.Policy.PolicyRuleId policyRuleId_; - /** - * <pre> - * Basic policy rule attributes - * </pre> - * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> - * @return Whether the policyRuleId field is set. - */ - @java.lang.Override - public boolean hasPolicyRuleId() { - return policyRuleId_ != null; + private static final com.google.protobuf.Parser<PolicyRuleService> + PARSER = new com.google.protobuf.AbstractParser<PolicyRuleService>() { + @java.lang.Override + public PolicyRuleService parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new PolicyRuleService(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<PolicyRuleService> parser() { + return PARSER; } - /** - * <pre> - * Basic policy rule attributes - * </pre> - * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> - * @return The policyRuleId. - */ + @java.lang.Override - public policy.Policy.PolicyRuleId getPolicyRuleId() { - return policyRuleId_ == null ? policy.Policy.PolicyRuleId.getDefaultInstance() : policyRuleId_; + public com.google.protobuf.Parser<PolicyRuleService> getParserForType() { + return PARSER; } - /** - * <pre> - * Basic policy rule attributes - * </pre> - * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> - */ + @java.lang.Override - public policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdOrBuilder() { - return getPolicyRuleId(); + public policy.Policy.PolicyRuleService getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } - public static final int POLICYRULETYPE_FIELD_NUMBER = 2; - private int policyRuleType_; - /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @return The enum numeric value on the wire for policyRuleType. - */ - @java.lang.Override public int getPolicyRuleTypeValue() { - return policyRuleType_; - } - /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @return The policyRuleType. - */ - @java.lang.Override public policy.Policy.PolicyRuleType getPolicyRuleType() { - @SuppressWarnings("deprecation") - policy.Policy.PolicyRuleType result = policy.Policy.PolicyRuleType.valueOf(policyRuleType_); - return result == null ? policy.Policy.PolicyRuleType.UNRECOGNIZED : result; - } + } - public static final int PRIORITY_FIELD_NUMBER = 3; - private int priority_; - /** - * <code>uint32 priority = 3;</code> - * @return The priority. - */ - @java.lang.Override - public int getPriority() { - return priority_; - } + public interface PolicyRuleDeviceOrBuilder extends + // @@protoc_insertion_point(interface_extends:policy.PolicyRuleDevice) + com.google.protobuf.MessageOrBuilder { - public static final int EVENT_FIELD_NUMBER = 4; - private policy.Policy.PolicyRuleEvent event_; /** * <pre> - * Event-Condition-Action model + * Basic policy rule attributes * </pre> * - * <code>.policy.PolicyRuleEvent event = 4;</code> - * @return Whether the event field is set. + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return Whether the policyRuleBasic field is set. */ - @java.lang.Override - public boolean hasEvent() { - return event_ != null; - } + boolean hasPolicyRuleBasic(); /** * <pre> - * Event-Condition-Action model + * Basic policy rule attributes * </pre> * - * <code>.policy.PolicyRuleEvent event = 4;</code> - * @return The event. + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return The policyRuleBasic. */ - @java.lang.Override - public policy.Policy.PolicyRuleEvent getEvent() { - return event_ == null ? policy.Policy.PolicyRuleEvent.getDefaultInstance() : event_; - } + policy.Policy.PolicyRuleBasic getPolicyRuleBasic(); /** * <pre> - * Event-Condition-Action model + * Basic policy rule attributes * </pre> * - * <code>.policy.PolicyRuleEvent event = 4;</code> + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> */ - @java.lang.Override - public policy.Policy.PolicyRuleEventOrBuilder getEventOrBuilder() { - return getEvent(); - } + policy.Policy.PolicyRuleBasicOrBuilder getPolicyRuleBasicOrBuilder(); - public static final int CONDITIONLIST_FIELD_NUMBER = 5; - private java.util.List<policy.PolicyCondition.PolicyRuleCondition> conditionList_; - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - @java.lang.Override - public java.util.List<policy.PolicyCondition.PolicyRuleCondition> getConditionListList() { - return conditionList_; - } /** * <pre> - * One or more conditions must be met + * Affected device(s) * </pre> * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - @java.lang.Override - public java.util.List<? extends policy.PolicyCondition.PolicyRuleConditionOrBuilder> - getConditionListOrBuilderList() { - return conditionList_; - } + java.util.List<context.ContextOuterClass.DeviceId> + getDeviceListList(); /** * <pre> - * One or more conditions must be met + * Affected device(s) * </pre> * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - @java.lang.Override - public int getConditionListCount() { - return conditionList_.size(); - } + context.ContextOuterClass.DeviceId getDeviceList(int index); /** * <pre> - * One or more conditions must be met + * Affected device(s) * </pre> * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - @java.lang.Override - public policy.PolicyCondition.PolicyRuleCondition getConditionList(int index) { - return conditionList_.get(index); - } + int getDeviceListCount(); /** * <pre> - * One or more conditions must be met + * Affected device(s) * </pre> * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - @java.lang.Override - public policy.PolicyCondition.PolicyRuleConditionOrBuilder getConditionListOrBuilder( - int index) { - return conditionList_.get(index); - } - - public static final int BOOLEANOPERATOR_FIELD_NUMBER = 6; - private int booleanOperator_; + java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceListOrBuilderList(); /** * <pre> - * Evaluation operator to be used + * Affected device(s) * </pre> * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @return The enum numeric value on the wire for booleanOperator. + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - @java.lang.Override public int getBooleanOperatorValue() { - return booleanOperator_; + context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( + int index); + } + /** + * <pre> + * Device-oriented policy rule + * </pre> + * + * Protobuf type {@code policy.PolicyRuleDevice} + */ + public static final class PolicyRuleDevice extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:policy.PolicyRuleDevice) + PolicyRuleDeviceOrBuilder { + private static final long serialVersionUID = 0L; + // Use PolicyRuleDevice.newBuilder() to construct. + private PolicyRuleDevice(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); } - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @return The booleanOperator. - */ - @java.lang.Override public policy.PolicyCondition.BooleanOperator getBooleanOperator() { - @SuppressWarnings("deprecation") - policy.PolicyCondition.BooleanOperator result = policy.PolicyCondition.BooleanOperator.valueOf(booleanOperator_); - return result == null ? policy.PolicyCondition.BooleanOperator.UNRECOGNIZED : result; + private PolicyRuleDevice() { + deviceList_ = java.util.Collections.emptyList(); } - public static final int ACTIONLIST_FIELD_NUMBER = 7; - private java.util.List<policy.PolicyAction.PolicyRuleAction> actionList_; - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - @java.lang.Override - public java.util.List<policy.PolicyAction.PolicyRuleAction> getActionListList() { - return actionList_; - } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - @java.lang.Override - public java.util.List<? extends policy.PolicyAction.PolicyRuleActionOrBuilder> - getActionListOrBuilderList() { - return actionList_; - } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ @java.lang.Override - public int getActionListCount() { - return actionList_.size(); + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new PolicyRuleDevice(); } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ + @java.lang.Override - public policy.PolicyAction.PolicyRuleAction getActionList(int index) { - return actionList_.get(index); + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ + private PolicyRuleDevice( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + policy.Policy.PolicyRuleBasic.Builder subBuilder = null; + if (policyRuleBasic_ != null) { + subBuilder = policyRuleBasic_.toBuilder(); + } + policyRuleBasic_ = input.readMessage(policy.Policy.PolicyRuleBasic.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(policyRuleBasic_); + policyRuleBasic_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + deviceList_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); + mutable_bitField0_ |= 0x00000001; + } + deviceList_.add( + input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry)); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + deviceList_ = java.util.Collections.unmodifiableList(deviceList_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return policy.Policy.internal_static_policy_PolicyRuleDevice_descriptor; + } + @java.lang.Override - public policy.PolicyAction.PolicyRuleActionOrBuilder getActionListOrBuilder( - int index) { - return actionList_.get(index); + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return policy.Policy.internal_static_policy_PolicyRuleDevice_fieldAccessorTable + .ensureFieldAccessorsInitialized( + policy.Policy.PolicyRuleDevice.class, policy.Policy.PolicyRuleDevice.Builder.class); } - public static final int SERVICEID_FIELD_NUMBER = 8; - private context.ContextOuterClass.ServiceId serviceId_; + public static final int POLICYRULEBASIC_FIELD_NUMBER = 1; + private policy.Policy.PolicyRuleBasic policyRuleBasic_; /** * <pre> - * Affected service and devices + * Basic policy rule attributes * </pre> * - * <code>.context.ServiceId serviceId = 8;</code> - * @return Whether the serviceId field is set. + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return Whether the policyRuleBasic field is set. */ @java.lang.Override - public boolean hasServiceId() { - return serviceId_ != null; + public boolean hasPolicyRuleBasic() { + return policyRuleBasic_ != null; } /** * <pre> - * Affected service and devices + * Basic policy rule attributes * </pre> * - * <code>.context.ServiceId serviceId = 8;</code> - * @return The serviceId. + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return The policyRuleBasic. */ @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceId() { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public policy.Policy.PolicyRuleBasic getPolicyRuleBasic() { + return policyRuleBasic_ == null ? policy.Policy.PolicyRuleBasic.getDefaultInstance() : policyRuleBasic_; } /** * <pre> - * Affected service and devices + * Basic policy rule attributes * </pre> * - * <code>.context.ServiceId serviceId = 8;</code> + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - return getServiceId(); + public policy.Policy.PolicyRuleBasicOrBuilder getPolicyRuleBasicOrBuilder() { + return getPolicyRuleBasic(); } - public static final int DEVICELIST_FIELD_NUMBER = 9; + public static final int DEVICELIST_FIELD_NUMBER = 2; private java.util.List<context.ContextOuterClass.DeviceId> deviceList_; /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ @java.lang.Override public java.util.List<context.ContextOuterClass.DeviceId> getDeviceListList() { return deviceList_; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ @java.lang.Override public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> @@ -2985,21 +5147,33 @@ public final class Policy { return deviceList_; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ @java.lang.Override public int getDeviceListCount() { return deviceList_.size(); } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ @java.lang.Override public context.ContextOuterClass.DeviceId getDeviceList(int index) { return deviceList_.get(index); } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ @java.lang.Override public context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( @@ -3021,32 +5195,11 @@ public final class Policy { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (policyRuleId_ != null) { - output.writeMessage(1, getPolicyRuleId()); - } - if (policyRuleType_ != policy.Policy.PolicyRuleType.POLICYTYPE_DEVICE.getNumber()) { - output.writeEnum(2, policyRuleType_); - } - if (priority_ != 0) { - output.writeUInt32(3, priority_); - } - if (event_ != null) { - output.writeMessage(4, getEvent()); - } - for (int i = 0; i < conditionList_.size(); i++) { - output.writeMessage(5, conditionList_.get(i)); - } - if (booleanOperator_ != policy.PolicyCondition.BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_UNDEFINED.getNumber()) { - output.writeEnum(6, booleanOperator_); - } - for (int i = 0; i < actionList_.size(); i++) { - output.writeMessage(7, actionList_.get(i)); - } - if (serviceId_ != null) { - output.writeMessage(8, getServiceId()); + if (policyRuleBasic_ != null) { + output.writeMessage(1, getPolicyRuleBasic()); } for (int i = 0; i < deviceList_.size(); i++) { - output.writeMessage(9, deviceList_.get(i)); + output.writeMessage(2, deviceList_.get(i)); } unknownFields.writeTo(output); } @@ -3057,41 +5210,13 @@ public final class Policy { if (size != -1) return size; size = 0; - if (policyRuleId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getPolicyRuleId()); - } - if (policyRuleType_ != policy.Policy.PolicyRuleType.POLICYTYPE_DEVICE.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(2, policyRuleType_); - } - if (priority_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(3, priority_); - } - if (event_ != null) { + if (policyRuleBasic_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, getEvent()); - } - for (int i = 0; i < conditionList_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, conditionList_.get(i)); - } - if (booleanOperator_ != policy.PolicyCondition.BooleanOperator.POLICYRULE_CONDITION_BOOLEAN_UNDEFINED.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(6, booleanOperator_); - } - for (int i = 0; i < actionList_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(7, actionList_.get(i)); - } - if (serviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(8, getServiceId()); + .computeMessageSize(1, getPolicyRuleBasic()); } for (int i = 0; i < deviceList_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(9, deviceList_.get(i)); + .computeMessageSize(2, deviceList_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -3103,33 +5228,15 @@ public final class Policy { if (obj == this) { return true; } - if (!(obj instanceof policy.Policy.PolicyRule)) { + if (!(obj instanceof policy.Policy.PolicyRuleDevice)) { return super.equals(obj); } - policy.Policy.PolicyRule other = (policy.Policy.PolicyRule) obj; + policy.Policy.PolicyRuleDevice other = (policy.Policy.PolicyRuleDevice) obj; - if (hasPolicyRuleId() != other.hasPolicyRuleId()) return false; - if (hasPolicyRuleId()) { - if (!getPolicyRuleId() - .equals(other.getPolicyRuleId())) return false; - } - if (policyRuleType_ != other.policyRuleType_) return false; - if (getPriority() - != other.getPriority()) return false; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (!getConditionListList() - .equals(other.getConditionListList())) return false; - if (booleanOperator_ != other.booleanOperator_) return false; - if (!getActionListList() - .equals(other.getActionListList())) return false; - if (hasServiceId() != other.hasServiceId()) return false; - if (hasServiceId()) { - if (!getServiceId() - .equals(other.getServiceId())) return false; + if (hasPolicyRuleBasic() != other.hasPolicyRuleBasic()) return false; + if (hasPolicyRuleBasic()) { + if (!getPolicyRuleBasic() + .equals(other.getPolicyRuleBasic())) return false; } if (!getDeviceListList() .equals(other.getDeviceListList())) return false; @@ -3144,31 +5251,9 @@ public final class Policy { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasPolicyRuleId()) { - hash = (37 * hash) + POLICYRULEID_FIELD_NUMBER; - hash = (53 * hash) + getPolicyRuleId().hashCode(); - } - hash = (37 * hash) + POLICYRULETYPE_FIELD_NUMBER; - hash = (53 * hash) + policyRuleType_; - hash = (37 * hash) + PRIORITY_FIELD_NUMBER; - hash = (53 * hash) + getPriority(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (getConditionListCount() > 0) { - hash = (37 * hash) + CONDITIONLIST_FIELD_NUMBER; - hash = (53 * hash) + getConditionListList().hashCode(); - } - hash = (37 * hash) + BOOLEANOPERATOR_FIELD_NUMBER; - hash = (53 * hash) + booleanOperator_; - if (getActionListCount() > 0) { - hash = (37 * hash) + ACTIONLIST_FIELD_NUMBER; - hash = (53 * hash) + getActionListList().hashCode(); - } - if (hasServiceId()) { - hash = (37 * hash) + SERVICEID_FIELD_NUMBER; - hash = (53 * hash) + getServiceId().hashCode(); + if (hasPolicyRuleBasic()) { + hash = (37 * hash) + POLICYRULEBASIC_FIELD_NUMBER; + hash = (53 * hash) + getPolicyRuleBasic().hashCode(); } if (getDeviceListCount() > 0) { hash = (37 * hash) + DEVICELIST_FIELD_NUMBER; @@ -3179,69 +5264,69 @@ public final class Policy { return hash; } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRule parseFrom(byte[] data) + public static policy.Policy.PolicyRuleDevice parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRule parseFrom(java.io.InputStream input) + public static policy.Policy.PolicyRuleDevice parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } - public static policy.Policy.PolicyRule parseDelimitedFrom(java.io.InputStream input) + public static policy.Policy.PolicyRuleDevice parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static policy.Policy.PolicyRule parseDelimitedFrom( + public static policy.Policy.PolicyRuleDevice parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static policy.Policy.PolicyRule parseFrom( + public static policy.Policy.PolicyRuleDevice parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -3254,7 +5339,7 @@ public final class Policy { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(policy.Policy.PolicyRule prototype) { + public static Builder newBuilder(policy.Policy.PolicyRuleDevice prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -3271,32 +5356,29 @@ public final class Policy { } /** * <pre> - * Policy rule partially complies with IETF’s: - * RFC 3060: https://datatracker.ietf.org/doc/html/rfc3060 - * RFC 3460: https://datatracker.ietf.org/doc/html/rfc3460 - * Enhanced with a policy rule event according to the ECA model + * Device-oriented policy rule * </pre> * - * Protobuf type {@code policy.PolicyRule} + * Protobuf type {@code policy.PolicyRuleDevice} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:policy.PolicyRule) - policy.Policy.PolicyRuleOrBuilder { + // @@protoc_insertion_point(builder_implements:policy.PolicyRuleDevice) + policy.Policy.PolicyRuleDeviceOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return policy.Policy.internal_static_policy_PolicyRule_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleDevice_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return policy.Policy.internal_static_policy_PolicyRule_fieldAccessorTable + return policy.Policy.internal_static_policy_PolicyRuleDevice_fieldAccessorTable .ensureFieldAccessorsInitialized( - policy.Policy.PolicyRule.class, policy.Policy.PolicyRule.Builder.class); + policy.Policy.PolicyRuleDevice.class, policy.Policy.PolicyRuleDevice.Builder.class); } - // Construct using policy.Policy.PolicyRule.newBuilder() + // Construct using policy.Policy.PolicyRuleDevice.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -3309,53 +5391,21 @@ public final class Policy { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConditionListFieldBuilder(); - getActionListFieldBuilder(); getDeviceListFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (policyRuleIdBuilder_ == null) { - policyRuleId_ = null; - } else { - policyRuleId_ = null; - policyRuleIdBuilder_ = null; - } - policyRuleType_ = 0; - - priority_ = 0; - - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (conditionListBuilder_ == null) { - conditionList_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - conditionListBuilder_.clear(); - } - booleanOperator_ = 0; - - if (actionListBuilder_ == null) { - actionList_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - } else { - actionListBuilder_.clear(); - } - if (serviceIdBuilder_ == null) { - serviceId_ = null; + if (policyRuleBasicBuilder_ == null) { + policyRuleBasic_ = null; } else { - serviceId_ = null; - serviceIdBuilder_ = null; + policyRuleBasic_ = null; + policyRuleBasicBuilder_ = null; } if (deviceListBuilder_ == null) { deviceList_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000001); } else { deviceListBuilder_.clear(); } @@ -3365,17 +5415,17 @@ public final class Policy { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return policy.Policy.internal_static_policy_PolicyRule_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleDevice_descriptor; } @java.lang.Override - public policy.Policy.PolicyRule getDefaultInstanceForType() { - return policy.Policy.PolicyRule.getDefaultInstance(); + public policy.Policy.PolicyRuleDevice getDefaultInstanceForType() { + return policy.Policy.PolicyRuleDevice.getDefaultInstance(); } @java.lang.Override - public policy.Policy.PolicyRule build() { - policy.Policy.PolicyRule result = buildPartial(); + public policy.Policy.PolicyRuleDevice build() { + policy.Policy.PolicyRuleDevice result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -3383,49 +5433,18 @@ public final class Policy { } @java.lang.Override - public policy.Policy.PolicyRule buildPartial() { - policy.Policy.PolicyRule result = new policy.Policy.PolicyRule(this); + public policy.Policy.PolicyRuleDevice buildPartial() { + policy.Policy.PolicyRuleDevice result = new policy.Policy.PolicyRuleDevice(this); int from_bitField0_ = bitField0_; - if (policyRuleIdBuilder_ == null) { - result.policyRuleId_ = policyRuleId_; - } else { - result.policyRuleId_ = policyRuleIdBuilder_.build(); - } - result.policyRuleType_ = policyRuleType_; - result.priority_ = priority_; - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (conditionListBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - conditionList_ = java.util.Collections.unmodifiableList(conditionList_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.conditionList_ = conditionList_; + if (policyRuleBasicBuilder_ == null) { + result.policyRuleBasic_ = policyRuleBasic_; } else { - result.conditionList_ = conditionListBuilder_.build(); - } - result.booleanOperator_ = booleanOperator_; - if (actionListBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - actionList_ = java.util.Collections.unmodifiableList(actionList_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.actionList_ = actionList_; - } else { - result.actionList_ = actionListBuilder_.build(); - } - if (serviceIdBuilder_ == null) { - result.serviceId_ = serviceId_; - } else { - result.serviceId_ = serviceIdBuilder_.build(); + result.policyRuleBasic_ = policyRuleBasicBuilder_.build(); } if (deviceListBuilder_ == null) { - if (((bitField0_ & 0x00000004) != 0)) { + if (((bitField0_ & 0x00000001) != 0)) { deviceList_ = java.util.Collections.unmodifiableList(deviceList_); - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000001); } result.deviceList_ = deviceList_; } else { @@ -3461,99 +5480,32 @@ public final class Policy { int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof policy.Policy.PolicyRule) { - return mergeFrom((policy.Policy.PolicyRule)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(policy.Policy.PolicyRule other) { - if (other == policy.Policy.PolicyRule.getDefaultInstance()) return this; - if (other.hasPolicyRuleId()) { - mergePolicyRuleId(other.getPolicyRuleId()); - } - if (other.policyRuleType_ != 0) { - setPolicyRuleTypeValue(other.getPolicyRuleTypeValue()); - } - if (other.getPriority() != 0) { - setPriority(other.getPriority()); - } - if (other.hasEvent()) { - mergeEvent(other.getEvent()); - } - if (conditionListBuilder_ == null) { - if (!other.conditionList_.isEmpty()) { - if (conditionList_.isEmpty()) { - conditionList_ = other.conditionList_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureConditionListIsMutable(); - conditionList_.addAll(other.conditionList_); - } - onChanged(); - } - } else { - if (!other.conditionList_.isEmpty()) { - if (conditionListBuilder_.isEmpty()) { - conditionListBuilder_.dispose(); - conditionListBuilder_ = null; - conditionList_ = other.conditionList_; - bitField0_ = (bitField0_ & ~0x00000001); - conditionListBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConditionListFieldBuilder() : null; - } else { - conditionListBuilder_.addAllMessages(other.conditionList_); - } - } - } - if (other.booleanOperator_ != 0) { - setBooleanOperatorValue(other.getBooleanOperatorValue()); - } - if (actionListBuilder_ == null) { - if (!other.actionList_.isEmpty()) { - if (actionList_.isEmpty()) { - actionList_ = other.actionList_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensureActionListIsMutable(); - actionList_.addAll(other.actionList_); - } - onChanged(); - } - } else { - if (!other.actionList_.isEmpty()) { - if (actionListBuilder_.isEmpty()) { - actionListBuilder_.dispose(); - actionListBuilder_ = null; - actionList_ = other.actionList_; - bitField0_ = (bitField0_ & ~0x00000002); - actionListBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getActionListFieldBuilder() : null; - } else { - actionListBuilder_.addAllMessages(other.actionList_); - } - } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof policy.Policy.PolicyRuleDevice) { + return mergeFrom((policy.Policy.PolicyRuleDevice)other); + } else { + super.mergeFrom(other); + return this; } - if (other.hasServiceId()) { - mergeServiceId(other.getServiceId()); + } + + public Builder mergeFrom(policy.Policy.PolicyRuleDevice other) { + if (other == policy.Policy.PolicyRuleDevice.getDefaultInstance()) return this; + if (other.hasPolicyRuleBasic()) { + mergePolicyRuleBasic(other.getPolicyRuleBasic()); } if (deviceListBuilder_ == null) { if (!other.deviceList_.isEmpty()) { if (deviceList_.isEmpty()) { deviceList_ = other.deviceList_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000001); } else { ensureDeviceListIsMutable(); deviceList_.addAll(other.deviceList_); @@ -3566,7 +5518,7 @@ public final class Policy { deviceListBuilder_.dispose(); deviceListBuilder_ = null; deviceList_ = other.deviceList_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000001); deviceListBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getDeviceListFieldBuilder() : null; @@ -3590,11 +5542,11 @@ public final class Policy { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - policy.Policy.PolicyRule parsedMessage = null; + policy.Policy.PolicyRuleDevice parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (policy.Policy.PolicyRule) e.getUnfinishedMessage(); + parsedMessage = (policy.Policy.PolicyRuleDevice) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -3605,33 +5557,33 @@ public final class Policy { } private int bitField0_; - private policy.Policy.PolicyRuleId policyRuleId_; + private policy.Policy.PolicyRuleBasic policyRuleBasic_; private com.google.protobuf.SingleFieldBuilderV3< - policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> policyRuleIdBuilder_; + policy.Policy.PolicyRuleBasic, policy.Policy.PolicyRuleBasic.Builder, policy.Policy.PolicyRuleBasicOrBuilder> policyRuleBasicBuilder_; /** * <pre> * Basic policy rule attributes * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> - * @return Whether the policyRuleId field is set. + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return Whether the policyRuleBasic field is set. */ - public boolean hasPolicyRuleId() { - return policyRuleIdBuilder_ != null || policyRuleId_ != null; + public boolean hasPolicyRuleBasic() { + return policyRuleBasicBuilder_ != null || policyRuleBasic_ != null; } /** * <pre> * Basic policy rule attributes * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> - * @return The policyRuleId. + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + * @return The policyRuleBasic. */ - public policy.Policy.PolicyRuleId getPolicyRuleId() { - if (policyRuleIdBuilder_ == null) { - return policyRuleId_ == null ? policy.Policy.PolicyRuleId.getDefaultInstance() : policyRuleId_; + public policy.Policy.PolicyRuleBasic getPolicyRuleBasic() { + if (policyRuleBasicBuilder_ == null) { + return policyRuleBasic_ == null ? policy.Policy.PolicyRuleBasic.getDefaultInstance() : policyRuleBasic_; } else { - return policyRuleIdBuilder_.getMessage(); + return policyRuleBasicBuilder_.getMessage(); } } /** @@ -3639,1458 +5591,2039 @@ public final class Policy { * Basic policy rule attributes * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> */ - public Builder setPolicyRuleId(policy.Policy.PolicyRuleId value) { - if (policyRuleIdBuilder_ == null) { + public Builder setPolicyRuleBasic(policy.Policy.PolicyRuleBasic value) { + if (policyRuleBasicBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - policyRuleId_ = value; + policyRuleBasic_ = value; onChanged(); } else { - policyRuleIdBuilder_.setMessage(value); + policyRuleBasicBuilder_.setMessage(value); + } + + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public Builder setPolicyRuleBasic( + policy.Policy.PolicyRuleBasic.Builder builderForValue) { + if (policyRuleBasicBuilder_ == null) { + policyRuleBasic_ = builderForValue.build(); + onChanged(); + } else { + policyRuleBasicBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public Builder mergePolicyRuleBasic(policy.Policy.PolicyRuleBasic value) { + if (policyRuleBasicBuilder_ == null) { + if (policyRuleBasic_ != null) { + policyRuleBasic_ = + policy.Policy.PolicyRuleBasic.newBuilder(policyRuleBasic_).mergeFrom(value).buildPartial(); + } else { + policyRuleBasic_ = value; + } + onChanged(); + } else { + policyRuleBasicBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public Builder clearPolicyRuleBasic() { + if (policyRuleBasicBuilder_ == null) { + policyRuleBasic_ = null; + onChanged(); + } else { + policyRuleBasic_ = null; + policyRuleBasicBuilder_ = null; + } + + return this; + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public policy.Policy.PolicyRuleBasic.Builder getPolicyRuleBasicBuilder() { + + onChanged(); + return getPolicyRuleBasicFieldBuilder().getBuilder(); + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + public policy.Policy.PolicyRuleBasicOrBuilder getPolicyRuleBasicOrBuilder() { + if (policyRuleBasicBuilder_ != null) { + return policyRuleBasicBuilder_.getMessageOrBuilder(); + } else { + return policyRuleBasic_ == null ? + policy.Policy.PolicyRuleBasic.getDefaultInstance() : policyRuleBasic_; + } + } + /** + * <pre> + * Basic policy rule attributes + * </pre> + * + * <code>.policy.PolicyRuleBasic policyRuleBasic = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleBasic, policy.Policy.PolicyRuleBasic.Builder, policy.Policy.PolicyRuleBasicOrBuilder> + getPolicyRuleBasicFieldBuilder() { + if (policyRuleBasicBuilder_ == null) { + policyRuleBasicBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + policy.Policy.PolicyRuleBasic, policy.Policy.PolicyRuleBasic.Builder, policy.Policy.PolicyRuleBasicOrBuilder>( + getPolicyRuleBasic(), + getParentForChildren(), + isClean()); + policyRuleBasic_ = null; + } + return policyRuleBasicBuilder_; + } + + private java.util.List<context.ContextOuterClass.DeviceId> deviceList_ = + java.util.Collections.emptyList(); + private void ensureDeviceListIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + deviceList_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceList_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceListBuilder_; + + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceListList() { + if (deviceListBuilder_ == null) { + return java.util.Collections.unmodifiableList(deviceList_); + } else { + return deviceListBuilder_.getMessageList(); + } + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public int getDeviceListCount() { + if (deviceListBuilder_ == null) { + return deviceList_.size(); + } else { + return deviceListBuilder_.getCount(); + } + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public context.ContextOuterClass.DeviceId getDeviceList(int index) { + if (deviceListBuilder_ == null) { + return deviceList_.get(index); + } else { + return deviceListBuilder_.getMessage(index); + } + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public Builder setDeviceList( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceListIsMutable(); + deviceList_.set(index, value); + onChanged(); + } else { + deviceListBuilder_.setMessage(index, value); + } + return this; + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public Builder setDeviceList( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.set(index, builderForValue.build()); + onChanged(); + } else { + deviceListBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public Builder addDeviceList(context.ContextOuterClass.DeviceId value) { + if (deviceListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceListIsMutable(); + deviceList_.add(value); + onChanged(); + } else { + deviceListBuilder_.addMessage(value); + } + return this; + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public Builder addDeviceList( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceListBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceListIsMutable(); + deviceList_.add(index, value); + onChanged(); + } else { + deviceListBuilder_.addMessage(index, value); + } + return this; + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public Builder addDeviceList( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.add(builderForValue.build()); + onChanged(); + } else { + deviceListBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> + */ + public Builder addDeviceList( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.add(index, builderForValue.build()); + onChanged(); + } else { + deviceListBuilder_.addMessage(index, builderForValue.build()); } - return this; } /** * <pre> - * Basic policy rule attributes + * Affected device(s) * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - public Builder setPolicyRuleId( - policy.Policy.PolicyRuleId.Builder builderForValue) { - if (policyRuleIdBuilder_ == null) { - policyRuleId_ = builderForValue.build(); + public Builder addAllDeviceList( + java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, deviceList_); onChanged(); } else { - policyRuleIdBuilder_.setMessage(builderForValue.build()); + deviceListBuilder_.addAllMessages(values); } - return this; } /** * <pre> - * Basic policy rule attributes + * Affected device(s) * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - public Builder mergePolicyRuleId(policy.Policy.PolicyRuleId value) { - if (policyRuleIdBuilder_ == null) { - if (policyRuleId_ != null) { - policyRuleId_ = - policy.Policy.PolicyRuleId.newBuilder(policyRuleId_).mergeFrom(value).buildPartial(); - } else { - policyRuleId_ = value; - } + public Builder clearDeviceList() { + if (deviceListBuilder_ == null) { + deviceList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - policyRuleIdBuilder_.mergeFrom(value); + deviceListBuilder_.clear(); } - return this; } /** * <pre> - * Basic policy rule attributes + * Affected device(s) * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - public Builder clearPolicyRuleId() { - if (policyRuleIdBuilder_ == null) { - policyRuleId_ = null; + public Builder removeDeviceList(int index) { + if (deviceListBuilder_ == null) { + ensureDeviceListIsMutable(); + deviceList_.remove(index); onChanged(); } else { - policyRuleId_ = null; - policyRuleIdBuilder_ = null; + deviceListBuilder_.remove(index); } - return this; } /** * <pre> - * Basic policy rule attributes + * Affected device(s) * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - public policy.Policy.PolicyRuleId.Builder getPolicyRuleIdBuilder() { - - onChanged(); - return getPolicyRuleIdFieldBuilder().getBuilder(); + public context.ContextOuterClass.DeviceId.Builder getDeviceListBuilder( + int index) { + return getDeviceListFieldBuilder().getBuilder(index); } /** * <pre> - * Basic policy rule attributes + * Affected device(s) * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - public policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdOrBuilder() { - if (policyRuleIdBuilder_ != null) { - return policyRuleIdBuilder_.getMessageOrBuilder(); - } else { - return policyRuleId_ == null ? - policy.Policy.PolicyRuleId.getDefaultInstance() : policyRuleId_; + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( + int index) { + if (deviceListBuilder_ == null) { + return deviceList_.get(index); } else { + return deviceListBuilder_.getMessageOrBuilder(index); } } /** * <pre> - * Basic policy rule attributes + * Affected device(s) * </pre> * - * <code>.policy.PolicyRuleId policyRuleId = 1;</code> + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> - getPolicyRuleIdFieldBuilder() { - if (policyRuleIdBuilder_ == null) { - policyRuleIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder>( - getPolicyRuleId(), - getParentForChildren(), - isClean()); - policyRuleId_ = null; + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceListOrBuilderList() { + if (deviceListBuilder_ != null) { + return deviceListBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(deviceList_); } - return policyRuleIdBuilder_; } - - private int policyRuleType_ = 0; /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @return The enum numeric value on the wire for policyRuleType. + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - @java.lang.Override public int getPolicyRuleTypeValue() { - return policyRuleType_; + public context.ContextOuterClass.DeviceId.Builder addDeviceListBuilder() { + return getDeviceListFieldBuilder().addBuilder( + context.ContextOuterClass.DeviceId.getDefaultInstance()); } /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @param value The enum numeric value on the wire for policyRuleType to set. - * @return This builder for chaining. + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - public Builder setPolicyRuleTypeValue(int value) { - - policyRuleType_ = value; - onChanged(); - return this; + public context.ContextOuterClass.DeviceId.Builder addDeviceListBuilder( + int index) { + return getDeviceListFieldBuilder().addBuilder( + index, context.ContextOuterClass.DeviceId.getDefaultInstance()); } /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @return The policyRuleType. + * <pre> + * Affected device(s) + * </pre> + * + * <code>repeated .context.DeviceId deviceList = 2;</code> */ - @java.lang.Override - public policy.Policy.PolicyRuleType getPolicyRuleType() { - @SuppressWarnings("deprecation") - policy.Policy.PolicyRuleType result = policy.Policy.PolicyRuleType.valueOf(policyRuleType_); - return result == null ? policy.Policy.PolicyRuleType.UNRECOGNIZED : result; + public java.util.List<context.ContextOuterClass.DeviceId.Builder> + getDeviceListBuilderList() { + return getDeviceListFieldBuilder().getBuilderList(); } - /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @param value The policyRuleType to set. - * @return This builder for chaining. - */ - public Builder setPolicyRuleType(policy.Policy.PolicyRuleType value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceListFieldBuilder() { + if (deviceListBuilder_ == null) { + deviceListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + deviceList_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + deviceList_ = null; } - - policyRuleType_ = value.getNumber(); - onChanged(); - return this; + return deviceListBuilder_; } - /** - * <code>.policy.PolicyRuleType policyRuleType = 2;</code> - * @return This builder for chaining. - */ - public Builder clearPolicyRuleType() { - - policyRuleType_ = 0; - onChanged(); - return this; + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } - private int priority_ ; - /** - * <code>uint32 priority = 3;</code> - * @return The priority. - */ @java.lang.Override - public int getPriority() { - return priority_; - } - /** - * <code>uint32 priority = 3;</code> - * @param value The priority to set. - * @return This builder for chaining. - */ - public Builder setPriority(int value) { - - priority_ = value; - onChanged(); - return this; - } - /** - * <code>uint32 priority = 3;</code> - * @return This builder for chaining. - */ - public Builder clearPriority() { - - priority_ = 0; - onChanged(); - return this; + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - private policy.Policy.PolicyRuleEvent event_; - private com.google.protobuf.SingleFieldBuilderV3< - policy.Policy.PolicyRuleEvent, policy.Policy.PolicyRuleEvent.Builder, policy.Policy.PolicyRuleEventOrBuilder> eventBuilder_; - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - * @return Whether the event field is set. - */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + + // @@protoc_insertion_point(builder_scope:policy.PolicyRuleDevice) + } + + // @@protoc_insertion_point(class_scope:policy.PolicyRuleDevice) + private static final policy.Policy.PolicyRuleDevice DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new policy.Policy.PolicyRuleDevice(); + } + + public static policy.Policy.PolicyRuleDevice getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<PolicyRuleDevice> + PARSER = new com.google.protobuf.AbstractParser<PolicyRuleDevice>() { + @java.lang.Override + public PolicyRuleDevice parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new PolicyRuleDevice(input, extensionRegistry); } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - * @return The event. - */ - public policy.Policy.PolicyRuleEvent getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? policy.Policy.PolicyRuleEvent.getDefaultInstance() : event_; - } else { - return eventBuilder_.getMessage(); - } + }; + + public static com.google.protobuf.Parser<PolicyRuleDevice> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<PolicyRuleDevice> getParserForType() { + return PARSER; + } + + @java.lang.Override + public policy.Policy.PolicyRuleDevice getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface PolicyRuleIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:policy.PolicyRuleIdList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + java.util.List<policy.Policy.PolicyRuleId> + getPolicyRuleIdListList(); + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + policy.Policy.PolicyRuleId getPolicyRuleIdList(int index); + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + int getPolicyRuleIdListCount(); + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + java.util.List<? extends policy.Policy.PolicyRuleIdOrBuilder> + getPolicyRuleIdListOrBuilderList(); + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdListOrBuilder( + int index); + } + /** + * <pre> + * A list of policy rule IDs + * </pre> + * + * Protobuf type {@code policy.PolicyRuleIdList} + */ + public static final class PolicyRuleIdList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:policy.PolicyRuleIdList) + PolicyRuleIdListOrBuilder { + private static final long serialVersionUID = 0L; + // Use PolicyRuleIdList.newBuilder() to construct. + private PolicyRuleIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private PolicyRuleIdList() { + policyRuleIdList_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new PolicyRuleIdList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private PolicyRuleIdList( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - public Builder setEvent(policy.Policy.PolicyRuleEvent value) { - if (eventBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + policyRuleIdList_ = new java.util.ArrayList<policy.Policy.PolicyRuleId>(); + mutable_bitField0_ |= 0x00000001; + } + policyRuleIdList_.add( + input.readMessage(policy.Policy.PolicyRuleId.parser(), extensionRegistry)); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } } - event_ = value; - onChanged(); - } else { - eventBuilder_.setMessage(value); } - - return this; - } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - public Builder setEvent( - policy.Policy.PolicyRuleEvent.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); - onChanged(); - } else { - eventBuilder_.setMessage(builderForValue.build()); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + policyRuleIdList_ = java.util.Collections.unmodifiableList(policyRuleIdList_); } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return policy.Policy.internal_static_policy_PolicyRuleIdList_descriptor; + } - return this; + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return policy.Policy.internal_static_policy_PolicyRuleIdList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + policy.Policy.PolicyRuleIdList.class, policy.Policy.PolicyRuleIdList.Builder.class); + } + + public static final int POLICYRULEIDLIST_FIELD_NUMBER = 1; + private java.util.List<policy.Policy.PolicyRuleId> policyRuleIdList_; + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + @java.lang.Override + public java.util.List<policy.Policy.PolicyRuleId> getPolicyRuleIdListList() { + return policyRuleIdList_; + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends policy.Policy.PolicyRuleIdOrBuilder> + getPolicyRuleIdListOrBuilderList() { + return policyRuleIdList_; + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + @java.lang.Override + public int getPolicyRuleIdListCount() { + return policyRuleIdList_.size(); + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + @java.lang.Override + public policy.Policy.PolicyRuleId getPolicyRuleIdList(int index) { + return policyRuleIdList_.get(index); + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + @java.lang.Override + public policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdListOrBuilder( + int index) { + return policyRuleIdList_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < policyRuleIdList_.size(); i++) { + output.writeMessage(1, policyRuleIdList_.get(i)); } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - public Builder mergeEvent(policy.Policy.PolicyRuleEvent value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - policy.Policy.PolicyRuleEvent.newBuilder(event_).mergeFrom(value).buildPartial(); - } else { - event_ = value; - } - onChanged(); - } else { - eventBuilder_.mergeFrom(value); - } + unknownFields.writeTo(output); + } - return this; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < policyRuleIdList_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, policyRuleIdList_.get(i)); } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; - onChanged(); - } else { - event_ = null; - eventBuilder_ = null; - } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } - return this; + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - public policy.Policy.PolicyRuleEvent.Builder getEventBuilder() { - - onChanged(); - return getEventFieldBuilder().getBuilder(); + if (!(obj instanceof policy.Policy.PolicyRuleIdList)) { + return super.equals(obj); } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - public policy.Policy.PolicyRuleEventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); - } else { - return event_ == null ? - policy.Policy.PolicyRuleEvent.getDefaultInstance() : event_; - } + policy.Policy.PolicyRuleIdList other = (policy.Policy.PolicyRuleIdList) obj; + + if (!getPolicyRuleIdListList() + .equals(other.getPolicyRuleIdListList())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - /** - * <pre> - * Event-Condition-Action model - * </pre> - * - * <code>.policy.PolicyRuleEvent event = 4;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - policy.Policy.PolicyRuleEvent, policy.Policy.PolicyRuleEvent.Builder, policy.Policy.PolicyRuleEventOrBuilder> - getEventFieldBuilder() { - if (eventBuilder_ == null) { - eventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - policy.Policy.PolicyRuleEvent, policy.Policy.PolicyRuleEvent.Builder, policy.Policy.PolicyRuleEventOrBuilder>( - getEvent(), - getParentForChildren(), - isClean()); - event_ = null; - } - return eventBuilder_; + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getPolicyRuleIdListCount() > 0) { + hash = (37 * hash) + POLICYRULEIDLIST_FIELD_NUMBER; + hash = (53 * hash) + getPolicyRuleIdListList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static policy.Policy.PolicyRuleIdList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleIdList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleIdList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleIdList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleIdList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleIdList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleIdList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleIdList parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static policy.Policy.PolicyRuleIdList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleIdList parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static policy.Policy.PolicyRuleIdList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleIdList parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(policy.Policy.PolicyRuleIdList prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * <pre> + * A list of policy rule IDs + * </pre> + * + * Protobuf type {@code policy.PolicyRuleIdList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:policy.PolicyRuleIdList) + policy.Policy.PolicyRuleIdListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return policy.Policy.internal_static_policy_PolicyRuleIdList_descriptor; } - private java.util.List<policy.PolicyCondition.PolicyRuleCondition> conditionList_ = - java.util.Collections.emptyList(); - private void ensureConditionListIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - conditionList_ = new java.util.ArrayList<policy.PolicyCondition.PolicyRuleCondition>(conditionList_); - bitField0_ |= 0x00000001; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return policy.Policy.internal_static_policy_PolicyRuleIdList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + policy.Policy.PolicyRuleIdList.class, policy.Policy.PolicyRuleIdList.Builder.class); } - private com.google.protobuf.RepeatedFieldBuilderV3< - policy.PolicyCondition.PolicyRuleCondition, policy.PolicyCondition.PolicyRuleCondition.Builder, policy.PolicyCondition.PolicyRuleConditionOrBuilder> conditionListBuilder_; - - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public java.util.List<policy.PolicyCondition.PolicyRuleCondition> getConditionListList() { - if (conditionListBuilder_ == null) { - return java.util.Collections.unmodifiableList(conditionList_); - } else { - return conditionListBuilder_.getMessageList(); - } - } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public int getConditionListCount() { - if (conditionListBuilder_ == null) { - return conditionList_.size(); - } else { - return conditionListBuilder_.getCount(); - } - } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public policy.PolicyCondition.PolicyRuleCondition getConditionList(int index) { - if (conditionListBuilder_ == null) { - return conditionList_.get(index); - } else { - return conditionListBuilder_.getMessage(index); - } - } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder setConditionList( - int index, policy.PolicyCondition.PolicyRuleCondition value) { - if (conditionListBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConditionListIsMutable(); - conditionList_.set(index, value); - onChanged(); - } else { - conditionListBuilder_.setMessage(index, value); - } - return this; - } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder setConditionList( - int index, policy.PolicyCondition.PolicyRuleCondition.Builder builderForValue) { - if (conditionListBuilder_ == null) { - ensureConditionListIsMutable(); - conditionList_.set(index, builderForValue.build()); - onChanged(); - } else { - conditionListBuilder_.setMessage(index, builderForValue.build()); - } - return this; - } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder addConditionList(policy.PolicyCondition.PolicyRuleCondition value) { - if (conditionListBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConditionListIsMutable(); - conditionList_.add(value); - onChanged(); - } else { - conditionListBuilder_.addMessage(value); - } - return this; - } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder addConditionList( - int index, policy.PolicyCondition.PolicyRuleCondition value) { - if (conditionListBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConditionListIsMutable(); - conditionList_.add(index, value); - onChanged(); - } else { - conditionListBuilder_.addMessage(index, value); - } - return this; - } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder addConditionList( - policy.PolicyCondition.PolicyRuleCondition.Builder builderForValue) { - if (conditionListBuilder_ == null) { - ensureConditionListIsMutable(); - conditionList_.add(builderForValue.build()); - onChanged(); - } else { - conditionListBuilder_.addMessage(builderForValue.build()); - } - return this; + // Construct using policy.Policy.PolicyRuleIdList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder addConditionList( - int index, policy.PolicyCondition.PolicyRuleCondition.Builder builderForValue) { - if (conditionListBuilder_ == null) { - ensureConditionListIsMutable(); - conditionList_.add(index, builderForValue.build()); - onChanged(); - } else { - conditionListBuilder_.addMessage(index, builderForValue.build()); - } - return this; + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder addAllConditionList( - java.lang.Iterable<? extends policy.PolicyCondition.PolicyRuleCondition> values) { - if (conditionListBuilder_ == null) { - ensureConditionListIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, conditionList_); - onChanged(); - } else { - conditionListBuilder_.addAllMessages(values); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getPolicyRuleIdListFieldBuilder(); } - return this; } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder clearConditionList() { - if (conditionListBuilder_ == null) { - conditionList_ = java.util.Collections.emptyList(); + @java.lang.Override + public Builder clear() { + super.clear(); + if (policyRuleIdListBuilder_ == null) { + policyRuleIdList_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); } else { - conditionListBuilder_.clear(); + policyRuleIdListBuilder_.clear(); } return this; } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public Builder removeConditionList(int index) { - if (conditionListBuilder_ == null) { - ensureConditionListIsMutable(); - conditionList_.remove(index); - onChanged(); - } else { - conditionListBuilder_.remove(index); - } - return this; + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return policy.Policy.internal_static_policy_PolicyRuleIdList_descriptor; } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public policy.PolicyCondition.PolicyRuleCondition.Builder getConditionListBuilder( - int index) { - return getConditionListFieldBuilder().getBuilder(index); + + @java.lang.Override + public policy.Policy.PolicyRuleIdList getDefaultInstanceForType() { + return policy.Policy.PolicyRuleIdList.getDefaultInstance(); } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public policy.PolicyCondition.PolicyRuleConditionOrBuilder getConditionListOrBuilder( - int index) { - if (conditionListBuilder_ == null) { - return conditionList_.get(index); } else { - return conditionListBuilder_.getMessageOrBuilder(index); + + @java.lang.Override + public policy.Policy.PolicyRuleIdList build() { + policy.Policy.PolicyRuleIdList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public java.util.List<? extends policy.PolicyCondition.PolicyRuleConditionOrBuilder> - getConditionListOrBuilderList() { - if (conditionListBuilder_ != null) { - return conditionListBuilder_.getMessageOrBuilderList(); + + @java.lang.Override + public policy.Policy.PolicyRuleIdList buildPartial() { + policy.Policy.PolicyRuleIdList result = new policy.Policy.PolicyRuleIdList(this); + int from_bitField0_ = bitField0_; + if (policyRuleIdListBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + policyRuleIdList_ = java.util.Collections.unmodifiableList(policyRuleIdList_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.policyRuleIdList_ = policyRuleIdList_; } else { - return java.util.Collections.unmodifiableList(conditionList_); + result.policyRuleIdList_ = policyRuleIdListBuilder_.build(); } + onBuilt(); + return result; } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public policy.PolicyCondition.PolicyRuleCondition.Builder addConditionListBuilder() { - return getConditionListFieldBuilder().addBuilder( - policy.PolicyCondition.PolicyRuleCondition.getDefaultInstance()); + + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public policy.PolicyCondition.PolicyRuleCondition.Builder addConditionListBuilder( - int index) { - return getConditionListFieldBuilder().addBuilder( - index, policy.PolicyCondition.PolicyRuleCondition.getDefaultInstance()); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); } - /** - * <pre> - * One or more conditions must be met - * </pre> - * - * <code>repeated .policy.PolicyRuleCondition conditionList = 5;</code> - */ - public java.util.List<policy.PolicyCondition.PolicyRuleCondition.Builder> - getConditionListBuilderList() { - return getConditionListFieldBuilder().getBuilderList(); + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - private com.google.protobuf.RepeatedFieldBuilderV3< - policy.PolicyCondition.PolicyRuleCondition, policy.PolicyCondition.PolicyRuleCondition.Builder, policy.PolicyCondition.PolicyRuleConditionOrBuilder> - getConditionListFieldBuilder() { - if (conditionListBuilder_ == null) { - conditionListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - policy.PolicyCondition.PolicyRuleCondition, policy.PolicyCondition.PolicyRuleCondition.Builder, policy.PolicyCondition.PolicyRuleConditionOrBuilder>( - conditionList_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - conditionList_ = null; - } - return conditionListBuilder_; + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - - private int booleanOperator_ = 0; - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @return The enum numeric value on the wire for booleanOperator. - */ - @java.lang.Override public int getBooleanOperatorValue() { - return booleanOperator_; + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @param value The enum numeric value on the wire for booleanOperator to set. - * @return This builder for chaining. - */ - public Builder setBooleanOperatorValue(int value) { - - booleanOperator_ = value; - onChanged(); - return this; + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); } - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @return The booleanOperator. - */ @java.lang.Override - public policy.PolicyCondition.BooleanOperator getBooleanOperator() { - @SuppressWarnings("deprecation") - policy.PolicyCondition.BooleanOperator result = policy.PolicyCondition.BooleanOperator.valueOf(booleanOperator_); - return result == null ? policy.PolicyCondition.BooleanOperator.UNRECOGNIZED : result; + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof policy.Policy.PolicyRuleIdList) { + return mergeFrom((policy.Policy.PolicyRuleIdList)other); + } else { + super.mergeFrom(other); + return this; + } } - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @param value The booleanOperator to set. - * @return This builder for chaining. - */ - public Builder setBooleanOperator(policy.PolicyCondition.BooleanOperator value) { - if (value == null) { - throw new NullPointerException(); + + public Builder mergeFrom(policy.Policy.PolicyRuleIdList other) { + if (other == policy.Policy.PolicyRuleIdList.getDefaultInstance()) return this; + if (policyRuleIdListBuilder_ == null) { + if (!other.policyRuleIdList_.isEmpty()) { + if (policyRuleIdList_.isEmpty()) { + policyRuleIdList_ = other.policyRuleIdList_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.addAll(other.policyRuleIdList_); + } + onChanged(); + } + } else { + if (!other.policyRuleIdList_.isEmpty()) { + if (policyRuleIdListBuilder_.isEmpty()) { + policyRuleIdListBuilder_.dispose(); + policyRuleIdListBuilder_ = null; + policyRuleIdList_ = other.policyRuleIdList_; + bitField0_ = (bitField0_ & ~0x00000001); + policyRuleIdListBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getPolicyRuleIdListFieldBuilder() : null; + } else { + policyRuleIdListBuilder_.addAllMessages(other.policyRuleIdList_); + } + } } - - booleanOperator_ = value.getNumber(); + this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } - /** - * <pre> - * Evaluation operator to be used - * </pre> - * - * <code>.policy.BooleanOperator booleanOperator = 6;</code> - * @return This builder for chaining. - */ - public Builder clearBooleanOperator() { - - booleanOperator_ = 0; - onChanged(); + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + policy.Policy.PolicyRuleIdList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (policy.Policy.PolicyRuleIdList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } return this; } + private int bitField0_; - private java.util.List<policy.PolicyAction.PolicyRuleAction> actionList_ = + private java.util.List<policy.Policy.PolicyRuleId> policyRuleIdList_ = java.util.Collections.emptyList(); - private void ensureActionListIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - actionList_ = new java.util.ArrayList<policy.PolicyAction.PolicyRuleAction>(actionList_); - bitField0_ |= 0x00000002; + private void ensurePolicyRuleIdListIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + policyRuleIdList_ = new java.util.ArrayList<policy.Policy.PolicyRuleId>(policyRuleIdList_); + bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - policy.PolicyAction.PolicyRuleAction, policy.PolicyAction.PolicyRuleAction.Builder, policy.PolicyAction.PolicyRuleActionOrBuilder> actionListBuilder_; + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> policyRuleIdListBuilder_; /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public java.util.List<policy.PolicyAction.PolicyRuleAction> getActionListList() { - if (actionListBuilder_ == null) { - return java.util.Collections.unmodifiableList(actionList_); + public java.util.List<policy.Policy.PolicyRuleId> getPolicyRuleIdListList() { + if (policyRuleIdListBuilder_ == null) { + return java.util.Collections.unmodifiableList(policyRuleIdList_); } else { - return actionListBuilder_.getMessageList(); + return policyRuleIdListBuilder_.getMessageList(); } } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public int getActionListCount() { - if (actionListBuilder_ == null) { - return actionList_.size(); + public int getPolicyRuleIdListCount() { + if (policyRuleIdListBuilder_ == null) { + return policyRuleIdList_.size(); } else { - return actionListBuilder_.getCount(); + return policyRuleIdListBuilder_.getCount(); } } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public policy.PolicyAction.PolicyRuleAction getActionList(int index) { - if (actionListBuilder_ == null) { - return actionList_.get(index); + public policy.Policy.PolicyRuleId getPolicyRuleIdList(int index) { + if (policyRuleIdListBuilder_ == null) { + return policyRuleIdList_.get(index); } else { - return actionListBuilder_.getMessage(index); + return policyRuleIdListBuilder_.getMessage(index); } } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder setActionList( - int index, policy.PolicyAction.PolicyRuleAction value) { - if (actionListBuilder_ == null) { + public Builder setPolicyRuleIdList( + int index, policy.Policy.PolicyRuleId value) { + if (policyRuleIdListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureActionListIsMutable(); - actionList_.set(index, value); + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.set(index, value); onChanged(); } else { - actionListBuilder_.setMessage(index, value); + policyRuleIdListBuilder_.setMessage(index, value); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder setActionList( - int index, policy.PolicyAction.PolicyRuleAction.Builder builderForValue) { - if (actionListBuilder_ == null) { - ensureActionListIsMutable(); - actionList_.set(index, builderForValue.build()); + public Builder setPolicyRuleIdList( + int index, policy.Policy.PolicyRuleId.Builder builderForValue) { + if (policyRuleIdListBuilder_ == null) { + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.set(index, builderForValue.build()); onChanged(); } else { - actionListBuilder_.setMessage(index, builderForValue.build()); + policyRuleIdListBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder addActionList(policy.PolicyAction.PolicyRuleAction value) { - if (actionListBuilder_ == null) { + public Builder addPolicyRuleIdList(policy.Policy.PolicyRuleId value) { + if (policyRuleIdListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureActionListIsMutable(); - actionList_.add(value); + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.add(value); onChanged(); } else { - actionListBuilder_.addMessage(value); + policyRuleIdListBuilder_.addMessage(value); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder addActionList( - int index, policy.PolicyAction.PolicyRuleAction value) { - if (actionListBuilder_ == null) { + public Builder addPolicyRuleIdList( + int index, policy.Policy.PolicyRuleId value) { + if (policyRuleIdListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureActionListIsMutable(); - actionList_.add(index, value); + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.add(index, value); onChanged(); } else { - actionListBuilder_.addMessage(index, value); + policyRuleIdListBuilder_.addMessage(index, value); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder addActionList( - policy.PolicyAction.PolicyRuleAction.Builder builderForValue) { - if (actionListBuilder_ == null) { - ensureActionListIsMutable(); - actionList_.add(builderForValue.build()); + public Builder addPolicyRuleIdList( + policy.Policy.PolicyRuleId.Builder builderForValue) { + if (policyRuleIdListBuilder_ == null) { + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.add(builderForValue.build()); onChanged(); } else { - actionListBuilder_.addMessage(builderForValue.build()); + policyRuleIdListBuilder_.addMessage(builderForValue.build()); } return this; - } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder addActionList( - int index, policy.PolicyAction.PolicyRuleAction.Builder builderForValue) { - if (actionListBuilder_ == null) { - ensureActionListIsMutable(); - actionList_.add(index, builderForValue.build()); + public Builder addPolicyRuleIdList( + int index, policy.Policy.PolicyRuleId.Builder builderForValue) { + if (policyRuleIdListBuilder_ == null) { + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.add(index, builderForValue.build()); onChanged(); } else { - actionListBuilder_.addMessage(index, builderForValue.build()); + policyRuleIdListBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder addAllActionList( - java.lang.Iterable<? extends policy.PolicyAction.PolicyRuleAction> values) { - if (actionListBuilder_ == null) { - ensureActionListIsMutable(); + public Builder addAllPolicyRuleIdList( + java.lang.Iterable<? extends policy.Policy.PolicyRuleId> values) { + if (policyRuleIdListBuilder_ == null) { + ensurePolicyRuleIdListIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, actionList_); + values, policyRuleIdList_); onChanged(); } else { - actionListBuilder_.addAllMessages(values); + policyRuleIdListBuilder_.addAllMessages(values); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder clearActionList() { - if (actionListBuilder_ == null) { - actionList_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + public Builder clearPolicyRuleIdList() { + if (policyRuleIdListBuilder_ == null) { + policyRuleIdList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - actionListBuilder_.clear(); + policyRuleIdListBuilder_.clear(); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public Builder removeActionList(int index) { - if (actionListBuilder_ == null) { - ensureActionListIsMutable(); - actionList_.remove(index); + public Builder removePolicyRuleIdList(int index) { + if (policyRuleIdListBuilder_ == null) { + ensurePolicyRuleIdListIsMutable(); + policyRuleIdList_.remove(index); onChanged(); } else { - actionListBuilder_.remove(index); + policyRuleIdListBuilder_.remove(index); } return this; } /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> */ - public policy.PolicyAction.PolicyRuleAction.Builder getActionListBuilder( + public policy.Policy.PolicyRuleId.Builder getPolicyRuleIdListBuilder( int index) { - return getActionListFieldBuilder().getBuilder(index); + return getPolicyRuleIdListFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + public policy.Policy.PolicyRuleIdOrBuilder getPolicyRuleIdListOrBuilder( + int index) { + if (policyRuleIdListBuilder_ == null) { + return policyRuleIdList_.get(index); } else { + return policyRuleIdListBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + public java.util.List<? extends policy.Policy.PolicyRuleIdOrBuilder> + getPolicyRuleIdListOrBuilderList() { + if (policyRuleIdListBuilder_ != null) { + return policyRuleIdListBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(policyRuleIdList_); + } + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + public policy.Policy.PolicyRuleId.Builder addPolicyRuleIdListBuilder() { + return getPolicyRuleIdListFieldBuilder().addBuilder( + policy.Policy.PolicyRuleId.getDefaultInstance()); + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + public policy.Policy.PolicyRuleId.Builder addPolicyRuleIdListBuilder( + int index) { + return getPolicyRuleIdListFieldBuilder().addBuilder( + index, policy.Policy.PolicyRuleId.getDefaultInstance()); + } + /** + * <code>repeated .policy.PolicyRuleId policyRuleIdList = 1;</code> + */ + public java.util.List<policy.Policy.PolicyRuleId.Builder> + getPolicyRuleIdListBuilderList() { + return getPolicyRuleIdListFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> + getPolicyRuleIdListFieldBuilder() { + if (policyRuleIdListBuilder_ == null) { + policyRuleIdListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder>( + policyRuleIdList_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + policyRuleIdList_ = null; + } + return policyRuleIdListBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:policy.PolicyRuleIdList) + } + + // @@protoc_insertion_point(class_scope:policy.PolicyRuleIdList) + private static final policy.Policy.PolicyRuleIdList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new policy.Policy.PolicyRuleIdList(); + } + + public static policy.Policy.PolicyRuleIdList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<PolicyRuleIdList> + PARSER = new com.google.protobuf.AbstractParser<PolicyRuleIdList>() { + @java.lang.Override + public PolicyRuleIdList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new PolicyRuleIdList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<PolicyRuleIdList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<PolicyRuleIdList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public policy.Policy.PolicyRuleIdList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface PolicyRuleServiceListOrBuilder extends + // @@protoc_insertion_point(interface_extends:policy.PolicyRuleServiceList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + java.util.List<policy.Policy.PolicyRuleService> + getPolicyRuleServiceListList(); + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + policy.Policy.PolicyRuleService getPolicyRuleServiceList(int index); + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + int getPolicyRuleServiceListCount(); + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + java.util.List<? extends policy.Policy.PolicyRuleServiceOrBuilder> + getPolicyRuleServiceListOrBuilderList(); + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + policy.Policy.PolicyRuleServiceOrBuilder getPolicyRuleServiceListOrBuilder( + int index); + } + /** + * <pre> + * A list of service-oriented policy rules + * </pre> + * + * Protobuf type {@code policy.PolicyRuleServiceList} + */ + public static final class PolicyRuleServiceList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:policy.PolicyRuleServiceList) + PolicyRuleServiceListOrBuilder { + private static final long serialVersionUID = 0L; + // Use PolicyRuleServiceList.newBuilder() to construct. + private PolicyRuleServiceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private PolicyRuleServiceList() { + policyRuleServiceList_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new PolicyRuleServiceList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private PolicyRuleServiceList( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + policyRuleServiceList_ = new java.util.ArrayList<policy.Policy.PolicyRuleService>(); + mutable_bitField0_ |= 0x00000001; + } + policyRuleServiceList_.add( + input.readMessage(policy.Policy.PolicyRuleService.parser(), extensionRegistry)); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + policyRuleServiceList_ = java.util.Collections.unmodifiableList(policyRuleServiceList_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return policy.Policy.internal_static_policy_PolicyRuleServiceList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return policy.Policy.internal_static_policy_PolicyRuleServiceList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + policy.Policy.PolicyRuleServiceList.class, policy.Policy.PolicyRuleServiceList.Builder.class); + } + + public static final int POLICYRULESERVICELIST_FIELD_NUMBER = 1; + private java.util.List<policy.Policy.PolicyRuleService> policyRuleServiceList_; + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + @java.lang.Override + public java.util.List<policy.Policy.PolicyRuleService> getPolicyRuleServiceListList() { + return policyRuleServiceList_; + } + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends policy.Policy.PolicyRuleServiceOrBuilder> + getPolicyRuleServiceListOrBuilderList() { + return policyRuleServiceList_; + } + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + @java.lang.Override + public int getPolicyRuleServiceListCount() { + return policyRuleServiceList_.size(); + } + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + @java.lang.Override + public policy.Policy.PolicyRuleService getPolicyRuleServiceList(int index) { + return policyRuleServiceList_.get(index); + } + /** + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> + */ + @java.lang.Override + public policy.Policy.PolicyRuleServiceOrBuilder getPolicyRuleServiceListOrBuilder( + int index) { + return policyRuleServiceList_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < policyRuleServiceList_.size(); i++) { + output.writeMessage(1, policyRuleServiceList_.get(i)); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < policyRuleServiceList_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, policyRuleServiceList_.get(i)); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - public policy.PolicyAction.PolicyRuleActionOrBuilder getActionListOrBuilder( - int index) { - if (actionListBuilder_ == null) { - return actionList_.get(index); } else { - return actionListBuilder_.getMessageOrBuilder(index); - } + if (!(obj instanceof policy.Policy.PolicyRuleServiceList)) { + return super.equals(obj); } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - public java.util.List<? extends policy.PolicyAction.PolicyRuleActionOrBuilder> - getActionListOrBuilderList() { - if (actionListBuilder_ != null) { - return actionListBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(actionList_); - } + policy.Policy.PolicyRuleServiceList other = (policy.Policy.PolicyRuleServiceList) obj; + + if (!getPolicyRuleServiceListList() + .equals(other.getPolicyRuleServiceListList())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - public policy.PolicyAction.PolicyRuleAction.Builder addActionListBuilder() { - return getActionListFieldBuilder().addBuilder( - policy.PolicyAction.PolicyRuleAction.getDefaultInstance()); + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getPolicyRuleServiceListCount() > 0) { + hash = (37 * hash) + POLICYRULESERVICELIST_FIELD_NUMBER; + hash = (53 * hash) + getPolicyRuleServiceListList().hashCode(); } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - public policy.PolicyAction.PolicyRuleAction.Builder addActionListBuilder( - int index) { - return getActionListFieldBuilder().addBuilder( - index, policy.PolicyAction.PolicyRuleAction.getDefaultInstance()); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static policy.Policy.PolicyRuleServiceList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleServiceList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleServiceList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleServiceList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleServiceList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static policy.Policy.PolicyRuleServiceList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static policy.Policy.PolicyRuleServiceList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleServiceList parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static policy.Policy.PolicyRuleServiceList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleServiceList parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static policy.Policy.PolicyRuleServiceList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static policy.Policy.PolicyRuleServiceList parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(policy.Policy.PolicyRuleServiceList prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * <pre> + * A list of service-oriented policy rules + * </pre> + * + * Protobuf type {@code policy.PolicyRuleServiceList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:policy.PolicyRuleServiceList) + policy.Policy.PolicyRuleServiceListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return policy.Policy.internal_static_policy_PolicyRuleServiceList_descriptor; } - /** - * <pre> - * One or more actions should be applied - * </pre> - * - * <code>repeated .policy.PolicyRuleAction actionList = 7;</code> - */ - public java.util.List<policy.PolicyAction.PolicyRuleAction.Builder> - getActionListBuilderList() { - return getActionListFieldBuilder().getBuilderList(); + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return policy.Policy.internal_static_policy_PolicyRuleServiceList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + policy.Policy.PolicyRuleServiceList.class, policy.Policy.PolicyRuleServiceList.Builder.class); } - private com.google.protobuf.RepeatedFieldBuilderV3< - policy.PolicyAction.PolicyRuleAction, policy.PolicyAction.PolicyRuleAction.Builder, policy.PolicyAction.PolicyRuleActionOrBuilder> - getActionListFieldBuilder() { - if (actionListBuilder_ == null) { - actionListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - policy.PolicyAction.PolicyRuleAction, policy.PolicyAction.PolicyRuleAction.Builder, policy.PolicyAction.PolicyRuleActionOrBuilder>( - actionList_, - ((bitField0_ & 0x00000002) != 0), - getParentForChildren(), - isClean()); - actionList_ = null; - } - return actionListBuilder_; + + // Construct using policy.Policy.PolicyRuleServiceList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - private context.ContextOuterClass.ServiceId serviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - * @return Whether the serviceId field is set. - */ - public boolean hasServiceId() { - return serviceIdBuilder_ != null || serviceId_ != null; + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - * @return The serviceId. - */ - public context.ContextOuterClass.ServiceId getServiceId() { - if (serviceIdBuilder_ == null) { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; - } else { - return serviceIdBuilder_.getMessage(); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getPolicyRuleServiceListFieldBuilder(); } } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - public Builder setServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - serviceId_ = value; - onChanged(); + @java.lang.Override + public Builder clear() { + super.clear(); + if (policyRuleServiceListBuilder_ == null) { + policyRuleServiceList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - serviceIdBuilder_.setMessage(value); + policyRuleServiceListBuilder_.clear(); } - return this; } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - public Builder setServiceId( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdBuilder_ == null) { - serviceId_ = builderForValue.build(); - onChanged(); - } else { - serviceIdBuilder_.setMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return policy.Policy.internal_static_policy_PolicyRuleServiceList_descriptor; + } + + @java.lang.Override + public policy.Policy.PolicyRuleServiceList getDefaultInstanceForType() { + return policy.Policy.PolicyRuleServiceList.getDefaultInstance(); + } + + @java.lang.Override + public policy.Policy.PolicyRuleServiceList build() { + policy.Policy.PolicyRuleServiceList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { - if (serviceId_ != null) { - serviceId_ = - context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial(); - } else { - serviceId_ = value; + + @java.lang.Override + public policy.Policy.PolicyRuleServiceList buildPartial() { + policy.Policy.PolicyRuleServiceList result = new policy.Policy.PolicyRuleServiceList(this); + int from_bitField0_ = bitField0_; + if (policyRuleServiceListBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + policyRuleServiceList_ = java.util.Collections.unmodifiableList(policyRuleServiceList_); + bitField0_ = (bitField0_ & ~0x00000001); } - onChanged(); + result.policyRuleServiceList_ = policyRuleServiceList_; } else { - serviceIdBuilder_.mergeFrom(value); + result.policyRuleServiceList_ = policyRuleServiceListBuilder_.build(); } + onBuilt(); + return result; + } - return this; + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - public Builder clearServiceId() { - if (serviceIdBuilder_ == null) { - serviceId_ = null; - onChanged(); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof policy.Policy.PolicyRuleServiceList) { + return mergeFrom((policy.Policy.PolicyRuleServiceList)other); } else { - serviceId_ = null; - serviceIdBuilder_ = null; + super.mergeFrom(other); + return this; } - - return this; - } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { - - onChanged(); - return getServiceIdFieldBuilder().getBuilder(); } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - if (serviceIdBuilder_ != null) { - return serviceIdBuilder_.getMessageOrBuilder(); + + public Builder mergeFrom(policy.Policy.PolicyRuleServiceList other) { + if (other == policy.Policy.PolicyRuleServiceList.getDefaultInstance()) return this; + if (policyRuleServiceListBuilder_ == null) { + if (!other.policyRuleServiceList_.isEmpty()) { + if (policyRuleServiceList_.isEmpty()) { + policyRuleServiceList_ = other.policyRuleServiceList_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.addAll(other.policyRuleServiceList_); + } + onChanged(); + } } else { - return serviceId_ == null ? - context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + if (!other.policyRuleServiceList_.isEmpty()) { + if (policyRuleServiceListBuilder_.isEmpty()) { + policyRuleServiceListBuilder_.dispose(); + policyRuleServiceListBuilder_ = null; + policyRuleServiceList_ = other.policyRuleServiceList_; + bitField0_ = (bitField0_ & ~0x00000001); + policyRuleServiceListBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getPolicyRuleServiceListFieldBuilder() : null; + } else { + policyRuleServiceListBuilder_.addAllMessages(other.policyRuleServiceList_); + } + } } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; } - /** - * <pre> - * Affected service and devices - * </pre> - * - * <code>.context.ServiceId serviceId = 8;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdFieldBuilder() { - if (serviceIdBuilder_ == null) { - serviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( - getServiceId(), - getParentForChildren(), - isClean()); - serviceId_ = null; + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + policy.Policy.PolicyRuleServiceList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (policy.Policy.PolicyRuleServiceList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } - return serviceIdBuilder_; + return this; } + private int bitField0_; - private java.util.List<context.ContextOuterClass.DeviceId> deviceList_ = + private java.util.List<policy.Policy.PolicyRuleService> policyRuleServiceList_ = java.util.Collections.emptyList(); - private void ensureDeviceListIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { - deviceList_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceList_); - bitField0_ |= 0x00000004; + private void ensurePolicyRuleServiceListIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + policyRuleServiceList_ = new java.util.ArrayList<policy.Policy.PolicyRuleService>(policyRuleServiceList_); + bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceListBuilder_; + policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleService.Builder, policy.Policy.PolicyRuleServiceOrBuilder> policyRuleServiceListBuilder_; /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public java.util.List<context.ContextOuterClass.DeviceId> getDeviceListList() { - if (deviceListBuilder_ == null) { - return java.util.Collections.unmodifiableList(deviceList_); + public java.util.List<policy.Policy.PolicyRuleService> getPolicyRuleServiceListList() { + if (policyRuleServiceListBuilder_ == null) { + return java.util.Collections.unmodifiableList(policyRuleServiceList_); } else { - return deviceListBuilder_.getMessageList(); + return policyRuleServiceListBuilder_.getMessageList(); } } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public int getDeviceListCount() { - if (deviceListBuilder_ == null) { - return deviceList_.size(); + public int getPolicyRuleServiceListCount() { + if (policyRuleServiceListBuilder_ == null) { + return policyRuleServiceList_.size(); } else { - return deviceListBuilder_.getCount(); + return policyRuleServiceListBuilder_.getCount(); } } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public context.ContextOuterClass.DeviceId getDeviceList(int index) { - if (deviceListBuilder_ == null) { - return deviceList_.get(index); + public policy.Policy.PolicyRuleService getPolicyRuleServiceList(int index) { + if (policyRuleServiceListBuilder_ == null) { + return policyRuleServiceList_.get(index); } else { - return deviceListBuilder_.getMessage(index); + return policyRuleServiceListBuilder_.getMessage(index); } } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder setDeviceList( - int index, context.ContextOuterClass.DeviceId value) { - if (deviceListBuilder_ == null) { + public Builder setPolicyRuleServiceList( + int index, policy.Policy.PolicyRuleService value) { + if (policyRuleServiceListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureDeviceListIsMutable(); - deviceList_.set(index, value); + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.set(index, value); onChanged(); } else { - deviceListBuilder_.setMessage(index, value); + policyRuleServiceListBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder setDeviceList( - int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceListBuilder_ == null) { - ensureDeviceListIsMutable(); - deviceList_.set(index, builderForValue.build()); + public Builder setPolicyRuleServiceList( + int index, policy.Policy.PolicyRuleService.Builder builderForValue) { + if (policyRuleServiceListBuilder_ == null) { + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.set(index, builderForValue.build()); onChanged(); } else { - deviceListBuilder_.setMessage(index, builderForValue.build()); + policyRuleServiceListBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder addDeviceList(context.ContextOuterClass.DeviceId value) { - if (deviceListBuilder_ == null) { + public Builder addPolicyRuleServiceList(policy.Policy.PolicyRuleService value) { + if (policyRuleServiceListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureDeviceListIsMutable(); - deviceList_.add(value); + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.add(value); onChanged(); } else { - deviceListBuilder_.addMessage(value); + policyRuleServiceListBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder addDeviceList( - int index, context.ContextOuterClass.DeviceId value) { - if (deviceListBuilder_ == null) { + public Builder addPolicyRuleServiceList( + int index, policy.Policy.PolicyRuleService value) { + if (policyRuleServiceListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureDeviceListIsMutable(); - deviceList_.add(index, value); + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.add(index, value); onChanged(); } else { - deviceListBuilder_.addMessage(index, value); + policyRuleServiceListBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder addDeviceList( - context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceListBuilder_ == null) { - ensureDeviceListIsMutable(); - deviceList_.add(builderForValue.build()); + public Builder addPolicyRuleServiceList( + policy.Policy.PolicyRuleService.Builder builderForValue) { + if (policyRuleServiceListBuilder_ == null) { + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.add(builderForValue.build()); onChanged(); } else { - deviceListBuilder_.addMessage(builderForValue.build()); + policyRuleServiceListBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder addDeviceList( - int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceListBuilder_ == null) { - ensureDeviceListIsMutable(); - deviceList_.add(index, builderForValue.build()); + public Builder addPolicyRuleServiceList( + int index, policy.Policy.PolicyRuleService.Builder builderForValue) { + if (policyRuleServiceListBuilder_ == null) { + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.add(index, builderForValue.build()); onChanged(); } else { - deviceListBuilder_.addMessage(index, builderForValue.build()); + policyRuleServiceListBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder addAllDeviceList( - java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { - if (deviceListBuilder_ == null) { - ensureDeviceListIsMutable(); + public Builder addAllPolicyRuleServiceList( + java.lang.Iterable<? extends policy.Policy.PolicyRuleService> values) { + if (policyRuleServiceListBuilder_ == null) { + ensurePolicyRuleServiceListIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, deviceList_); + values, policyRuleServiceList_); onChanged(); } else { - deviceListBuilder_.addAllMessages(values); + policyRuleServiceListBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder clearDeviceList() { - if (deviceListBuilder_ == null) { - deviceList_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); + public Builder clearPolicyRuleServiceList() { + if (policyRuleServiceListBuilder_ == null) { + policyRuleServiceList_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - deviceListBuilder_.clear(); + policyRuleServiceListBuilder_.clear(); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public Builder removeDeviceList(int index) { - if (deviceListBuilder_ == null) { - ensureDeviceListIsMutable(); - deviceList_.remove(index); + public Builder removePolicyRuleServiceList(int index) { + if (policyRuleServiceListBuilder_ == null) { + ensurePolicyRuleServiceListIsMutable(); + policyRuleServiceList_.remove(index); onChanged(); } else { - deviceListBuilder_.remove(index); + policyRuleServiceListBuilder_.remove(index); } return this; } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public context.ContextOuterClass.DeviceId.Builder getDeviceListBuilder( + public policy.Policy.PolicyRuleService.Builder getPolicyRuleServiceListBuilder( int index) { - return getDeviceListFieldBuilder().getBuilder(index); + return getPolicyRuleServiceListFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceListOrBuilder( + public policy.Policy.PolicyRuleServiceOrBuilder getPolicyRuleServiceListOrBuilder( int index) { - if (deviceListBuilder_ == null) { - return deviceList_.get(index); } else { - return deviceListBuilder_.getMessageOrBuilder(index); + if (policyRuleServiceListBuilder_ == null) { + return policyRuleServiceList_.get(index); } else { + return policyRuleServiceListBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceListOrBuilderList() { - if (deviceListBuilder_ != null) { - return deviceListBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends policy.Policy.PolicyRuleServiceOrBuilder> + getPolicyRuleServiceListOrBuilderList() { + if (policyRuleServiceListBuilder_ != null) { + return policyRuleServiceListBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(deviceList_); + return java.util.Collections.unmodifiableList(policyRuleServiceList_); } } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public context.ContextOuterClass.DeviceId.Builder addDeviceListBuilder() { - return getDeviceListFieldBuilder().addBuilder( - context.ContextOuterClass.DeviceId.getDefaultInstance()); + public policy.Policy.PolicyRuleService.Builder addPolicyRuleServiceListBuilder() { + return getPolicyRuleServiceListFieldBuilder().addBuilder( + policy.Policy.PolicyRuleService.getDefaultInstance()); } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public context.ContextOuterClass.DeviceId.Builder addDeviceListBuilder( + public policy.Policy.PolicyRuleService.Builder addPolicyRuleServiceListBuilder( int index) { - return getDeviceListFieldBuilder().addBuilder( - index, context.ContextOuterClass.DeviceId.getDefaultInstance()); + return getPolicyRuleServiceListFieldBuilder().addBuilder( + index, policy.Policy.PolicyRuleService.getDefaultInstance()); } /** - * <code>repeated .context.DeviceId deviceList = 9;</code> + * <code>repeated .policy.PolicyRuleService policyRuleServiceList = 1;</code> */ - public java.util.List<context.ContextOuterClass.DeviceId.Builder> - getDeviceListBuilderList() { - return getDeviceListFieldBuilder().getBuilderList(); + public java.util.List<policy.Policy.PolicyRuleService.Builder> + getPolicyRuleServiceListBuilderList() { + return getPolicyRuleServiceListFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceListFieldBuilder() { - if (deviceListBuilder_ == null) { - deviceListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( - deviceList_, - ((bitField0_ & 0x00000004) != 0), + policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleService.Builder, policy.Policy.PolicyRuleServiceOrBuilder> + getPolicyRuleServiceListFieldBuilder() { + if (policyRuleServiceListBuilder_ == null) { + policyRuleServiceListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleService.Builder, policy.Policy.PolicyRuleServiceOrBuilder>( + policyRuleServiceList_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - deviceList_ = null; + policyRuleServiceList_ = null; } - return deviceListBuilder_; + return policyRuleServiceListBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -5105,99 +7638,99 @@ public final class Policy { } - // @@protoc_insertion_point(builder_scope:policy.PolicyRule) + // @@protoc_insertion_point(builder_scope:policy.PolicyRuleServiceList) } - // @@protoc_insertion_point(class_scope:policy.PolicyRule) - private static final policy.Policy.PolicyRule DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:policy.PolicyRuleServiceList) + private static final policy.Policy.PolicyRuleServiceList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new policy.Policy.PolicyRule(); + DEFAULT_INSTANCE = new policy.Policy.PolicyRuleServiceList(); } - public static policy.Policy.PolicyRule getDefaultInstance() { + public static policy.Policy.PolicyRuleServiceList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<PolicyRule> - PARSER = new com.google.protobuf.AbstractParser<PolicyRule>() { + private static final com.google.protobuf.Parser<PolicyRuleServiceList> + PARSER = new com.google.protobuf.AbstractParser<PolicyRuleServiceList>() { @java.lang.Override - public PolicyRule parsePartialFrom( + public PolicyRuleServiceList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new PolicyRule(input, extensionRegistry); + return new PolicyRuleServiceList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<PolicyRule> parser() { + public static com.google.protobuf.Parser<PolicyRuleServiceList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<PolicyRule> getParserForType() { + public com.google.protobuf.Parser<PolicyRuleServiceList> getParserForType() { return PARSER; } @java.lang.Override - public policy.Policy.PolicyRule getDefaultInstanceForType() { + public policy.Policy.PolicyRuleServiceList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface PolicyRuleListOrBuilder extends - // @@protoc_insertion_point(interface_extends:policy.PolicyRuleList) + public interface PolicyRuleDeviceListOrBuilder extends + // @@protoc_insertion_point(interface_extends:policy.PolicyRuleDeviceList) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - java.util.List<policy.Policy.PolicyRule> - getPolicyRuleListList(); + java.util.List<policy.Policy.PolicyRuleDevice> + getPolicyRuleDeviceListList(); /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - policy.Policy.PolicyRule getPolicyRuleList(int index); + policy.Policy.PolicyRuleDevice getPolicyRuleDeviceList(int index); /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - int getPolicyRuleListCount(); + int getPolicyRuleDeviceListCount(); /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - java.util.List<? extends policy.Policy.PolicyRuleOrBuilder> - getPolicyRuleListOrBuilderList(); + java.util.List<? extends policy.Policy.PolicyRuleDeviceOrBuilder> + getPolicyRuleDeviceListOrBuilderList(); /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - policy.Policy.PolicyRuleOrBuilder getPolicyRuleListOrBuilder( + policy.Policy.PolicyRuleDeviceOrBuilder getPolicyRuleDeviceListOrBuilder( int index); } /** * <pre> - * A list of policy rules + * A list of device-oriented policy rules * </pre> * - * Protobuf type {@code policy.PolicyRuleList} + * Protobuf type {@code policy.PolicyRuleDeviceList} */ - public static final class PolicyRuleList extends + public static final class PolicyRuleDeviceList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:policy.PolicyRuleList) - PolicyRuleListOrBuilder { + // @@protoc_insertion_point(message_implements:policy.PolicyRuleDeviceList) + PolicyRuleDeviceListOrBuilder { private static final long serialVersionUID = 0L; - // Use PolicyRuleList.newBuilder() to construct. - private PolicyRuleList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use PolicyRuleDeviceList.newBuilder() to construct. + private PolicyRuleDeviceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private PolicyRuleList() { - policyRuleList_ = java.util.Collections.emptyList(); + private PolicyRuleDeviceList() { + policyRuleDeviceList_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new PolicyRuleList(); + return new PolicyRuleDeviceList(); } @java.lang.Override @@ -5205,7 +7738,7 @@ public final class Policy { getUnknownFields() { return this.unknownFields; } - private PolicyRuleList( + private PolicyRuleDeviceList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -5226,11 +7759,11 @@ public final class Policy { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - policyRuleList_ = new java.util.ArrayList<policy.Policy.PolicyRule>(); + policyRuleDeviceList_ = new java.util.ArrayList<policy.Policy.PolicyRuleDevice>(); mutable_bitField0_ |= 0x00000001; } - policyRuleList_.add( - input.readMessage(policy.Policy.PolicyRule.parser(), extensionRegistry)); + policyRuleDeviceList_.add( + input.readMessage(policy.Policy.PolicyRuleDevice.parser(), extensionRegistry)); break; } default: { @@ -5249,7 +7782,7 @@ public final class Policy { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - policyRuleList_ = java.util.Collections.unmodifiableList(policyRuleList_); + policyRuleDeviceList_ = java.util.Collections.unmodifiableList(policyRuleDeviceList_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -5257,55 +7790,55 @@ public final class Policy { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return policy.Policy.internal_static_policy_PolicyRuleList_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleDeviceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return policy.Policy.internal_static_policy_PolicyRuleList_fieldAccessorTable + return policy.Policy.internal_static_policy_PolicyRuleDeviceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - policy.Policy.PolicyRuleList.class, policy.Policy.PolicyRuleList.Builder.class); + policy.Policy.PolicyRuleDeviceList.class, policy.Policy.PolicyRuleDeviceList.Builder.class); } - public static final int POLICYRULELIST_FIELD_NUMBER = 1; - private java.util.List<policy.Policy.PolicyRule> policyRuleList_; + public static final int POLICYRULEDEVICELIST_FIELD_NUMBER = 1; + private java.util.List<policy.Policy.PolicyRuleDevice> policyRuleDeviceList_; /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ @java.lang.Override - public java.util.List<policy.Policy.PolicyRule> getPolicyRuleListList() { - return policyRuleList_; + public java.util.List<policy.Policy.PolicyRuleDevice> getPolicyRuleDeviceListList() { + return policyRuleDeviceList_; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ @java.lang.Override - public java.util.List<? extends policy.Policy.PolicyRuleOrBuilder> - getPolicyRuleListOrBuilderList() { - return policyRuleList_; + public java.util.List<? extends policy.Policy.PolicyRuleDeviceOrBuilder> + getPolicyRuleDeviceListOrBuilderList() { + return policyRuleDeviceList_; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ @java.lang.Override - public int getPolicyRuleListCount() { - return policyRuleList_.size(); + public int getPolicyRuleDeviceListCount() { + return policyRuleDeviceList_.size(); } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ @java.lang.Override - public policy.Policy.PolicyRule getPolicyRuleList(int index) { - return policyRuleList_.get(index); + public policy.Policy.PolicyRuleDevice getPolicyRuleDeviceList(int index) { + return policyRuleDeviceList_.get(index); } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ @java.lang.Override - public policy.Policy.PolicyRuleOrBuilder getPolicyRuleListOrBuilder( + public policy.Policy.PolicyRuleDeviceOrBuilder getPolicyRuleDeviceListOrBuilder( int index) { - return policyRuleList_.get(index); + return policyRuleDeviceList_.get(index); } private byte memoizedIsInitialized = -1; @@ -5322,8 +7855,8 @@ public final class Policy { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < policyRuleList_.size(); i++) { - output.writeMessage(1, policyRuleList_.get(i)); + for (int i = 0; i < policyRuleDeviceList_.size(); i++) { + output.writeMessage(1, policyRuleDeviceList_.get(i)); } unknownFields.writeTo(output); } @@ -5334,9 +7867,9 @@ public final class Policy { if (size != -1) return size; size = 0; - for (int i = 0; i < policyRuleList_.size(); i++) { + for (int i = 0; i < policyRuleDeviceList_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, policyRuleList_.get(i)); + .computeMessageSize(1, policyRuleDeviceList_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -5348,13 +7881,13 @@ public final class Policy { if (obj == this) { return true; } - if (!(obj instanceof policy.Policy.PolicyRuleList)) { + if (!(obj instanceof policy.Policy.PolicyRuleDeviceList)) { return super.equals(obj); } - policy.Policy.PolicyRuleList other = (policy.Policy.PolicyRuleList) obj; + policy.Policy.PolicyRuleDeviceList other = (policy.Policy.PolicyRuleDeviceList) obj; - if (!getPolicyRuleListList() - .equals(other.getPolicyRuleListList())) return false; + if (!getPolicyRuleDeviceListList() + .equals(other.getPolicyRuleDeviceListList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -5366,78 +7899,78 @@ public final class Policy { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getPolicyRuleListCount() > 0) { - hash = (37 * hash) + POLICYRULELIST_FIELD_NUMBER; - hash = (53 * hash) + getPolicyRuleListList().hashCode(); + if (getPolicyRuleDeviceListCount() > 0) { + hash = (37 * hash) + POLICYRULEDEVICELIST_FIELD_NUMBER; + hash = (53 * hash) + getPolicyRuleDeviceListList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRuleList parseFrom(byte[] data) + public static policy.Policy.PolicyRuleDeviceList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static policy.Policy.PolicyRuleList parseFrom(java.io.InputStream input) + public static policy.Policy.PolicyRuleDeviceList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } - public static policy.Policy.PolicyRuleList parseDelimitedFrom(java.io.InputStream input) + public static policy.Policy.PolicyRuleDeviceList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static policy.Policy.PolicyRuleList parseDelimitedFrom( + public static policy.Policy.PolicyRuleDeviceList parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static policy.Policy.PolicyRuleList parseFrom( + public static policy.Policy.PolicyRuleDeviceList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -5450,7 +7983,7 @@ public final class Policy { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(policy.Policy.PolicyRuleList prototype) { + public static Builder newBuilder(policy.Policy.PolicyRuleDeviceList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -5467,29 +8000,29 @@ public final class Policy { } /** * <pre> - * A list of policy rules + * A list of device-oriented policy rules * </pre> * - * Protobuf type {@code policy.PolicyRuleList} + * Protobuf type {@code policy.PolicyRuleDeviceList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:policy.PolicyRuleList) - policy.Policy.PolicyRuleListOrBuilder { + // @@protoc_insertion_point(builder_implements:policy.PolicyRuleDeviceList) + policy.Policy.PolicyRuleDeviceListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return policy.Policy.internal_static_policy_PolicyRuleList_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleDeviceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return policy.Policy.internal_static_policy_PolicyRuleList_fieldAccessorTable + return policy.Policy.internal_static_policy_PolicyRuleDeviceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - policy.Policy.PolicyRuleList.class, policy.Policy.PolicyRuleList.Builder.class); + policy.Policy.PolicyRuleDeviceList.class, policy.Policy.PolicyRuleDeviceList.Builder.class); } - // Construct using policy.Policy.PolicyRuleList.newBuilder() + // Construct using policy.Policy.PolicyRuleDeviceList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -5502,17 +8035,17 @@ public final class Policy { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getPolicyRuleListFieldBuilder(); + getPolicyRuleDeviceListFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (policyRuleListBuilder_ == null) { - policyRuleList_ = java.util.Collections.emptyList(); + if (policyRuleDeviceListBuilder_ == null) { + policyRuleDeviceList_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - policyRuleListBuilder_.clear(); + policyRuleDeviceListBuilder_.clear(); } return this; } @@ -5520,17 +8053,17 @@ public final class Policy { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return policy.Policy.internal_static_policy_PolicyRuleList_descriptor; + return policy.Policy.internal_static_policy_PolicyRuleDeviceList_descriptor; } @java.lang.Override - public policy.Policy.PolicyRuleList getDefaultInstanceForType() { - return policy.Policy.PolicyRuleList.getDefaultInstance(); + public policy.Policy.PolicyRuleDeviceList getDefaultInstanceForType() { + return policy.Policy.PolicyRuleDeviceList.getDefaultInstance(); } @java.lang.Override - public policy.Policy.PolicyRuleList build() { - policy.Policy.PolicyRuleList result = buildPartial(); + public policy.Policy.PolicyRuleDeviceList build() { + policy.Policy.PolicyRuleDeviceList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -5538,17 +8071,17 @@ public final class Policy { } @java.lang.Override - public policy.Policy.PolicyRuleList buildPartial() { - policy.Policy.PolicyRuleList result = new policy.Policy.PolicyRuleList(this); + public policy.Policy.PolicyRuleDeviceList buildPartial() { + policy.Policy.PolicyRuleDeviceList result = new policy.Policy.PolicyRuleDeviceList(this); int from_bitField0_ = bitField0_; - if (policyRuleListBuilder_ == null) { + if (policyRuleDeviceListBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - policyRuleList_ = java.util.Collections.unmodifiableList(policyRuleList_); + policyRuleDeviceList_ = java.util.Collections.unmodifiableList(policyRuleDeviceList_); bitField0_ = (bitField0_ & ~0x00000001); } - result.policyRuleList_ = policyRuleList_; + result.policyRuleDeviceList_ = policyRuleDeviceList_; } else { - result.policyRuleList_ = policyRuleListBuilder_.build(); + result.policyRuleDeviceList_ = policyRuleDeviceListBuilder_.build(); } onBuilt(); return result; @@ -5588,39 +8121,39 @@ public final class Policy { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof policy.Policy.PolicyRuleList) { - return mergeFrom((policy.Policy.PolicyRuleList)other); + if (other instanceof policy.Policy.PolicyRuleDeviceList) { + return mergeFrom((policy.Policy.PolicyRuleDeviceList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(policy.Policy.PolicyRuleList other) { - if (other == policy.Policy.PolicyRuleList.getDefaultInstance()) return this; - if (policyRuleListBuilder_ == null) { - if (!other.policyRuleList_.isEmpty()) { - if (policyRuleList_.isEmpty()) { - policyRuleList_ = other.policyRuleList_; + public Builder mergeFrom(policy.Policy.PolicyRuleDeviceList other) { + if (other == policy.Policy.PolicyRuleDeviceList.getDefaultInstance()) return this; + if (policyRuleDeviceListBuilder_ == null) { + if (!other.policyRuleDeviceList_.isEmpty()) { + if (policyRuleDeviceList_.isEmpty()) { + policyRuleDeviceList_ = other.policyRuleDeviceList_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensurePolicyRuleListIsMutable(); - policyRuleList_.addAll(other.policyRuleList_); + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.addAll(other.policyRuleDeviceList_); } onChanged(); } } else { - if (!other.policyRuleList_.isEmpty()) { - if (policyRuleListBuilder_.isEmpty()) { - policyRuleListBuilder_.dispose(); - policyRuleListBuilder_ = null; - policyRuleList_ = other.policyRuleList_; + if (!other.policyRuleDeviceList_.isEmpty()) { + if (policyRuleDeviceListBuilder_.isEmpty()) { + policyRuleDeviceListBuilder_.dispose(); + policyRuleDeviceListBuilder_ = null; + policyRuleDeviceList_ = other.policyRuleDeviceList_; bitField0_ = (bitField0_ & ~0x00000001); - policyRuleListBuilder_ = + policyRuleDeviceListBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getPolicyRuleListFieldBuilder() : null; + getPolicyRuleDeviceListFieldBuilder() : null; } else { - policyRuleListBuilder_.addAllMessages(other.policyRuleList_); + policyRuleDeviceListBuilder_.addAllMessages(other.policyRuleDeviceList_); } } } @@ -5639,11 +8172,11 @@ public final class Policy { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - policy.Policy.PolicyRuleList parsedMessage = null; + policy.Policy.PolicyRuleDeviceList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (policy.Policy.PolicyRuleList) e.getUnfinishedMessage(); + parsedMessage = (policy.Policy.PolicyRuleDeviceList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -5654,244 +8187,244 @@ public final class Policy { } private int bitField0_; - private java.util.List<policy.Policy.PolicyRule> policyRuleList_ = + private java.util.List<policy.Policy.PolicyRuleDevice> policyRuleDeviceList_ = java.util.Collections.emptyList(); - private void ensurePolicyRuleListIsMutable() { + private void ensurePolicyRuleDeviceListIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - policyRuleList_ = new java.util.ArrayList<policy.Policy.PolicyRule>(policyRuleList_); + policyRuleDeviceList_ = new java.util.ArrayList<policy.Policy.PolicyRuleDevice>(policyRuleDeviceList_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - policy.Policy.PolicyRule, policy.Policy.PolicyRule.Builder, policy.Policy.PolicyRuleOrBuilder> policyRuleListBuilder_; + policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleDevice.Builder, policy.Policy.PolicyRuleDeviceOrBuilder> policyRuleDeviceListBuilder_; /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public java.util.List<policy.Policy.PolicyRule> getPolicyRuleListList() { - if (policyRuleListBuilder_ == null) { - return java.util.Collections.unmodifiableList(policyRuleList_); + public java.util.List<policy.Policy.PolicyRuleDevice> getPolicyRuleDeviceListList() { + if (policyRuleDeviceListBuilder_ == null) { + return java.util.Collections.unmodifiableList(policyRuleDeviceList_); } else { - return policyRuleListBuilder_.getMessageList(); + return policyRuleDeviceListBuilder_.getMessageList(); } } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public int getPolicyRuleListCount() { - if (policyRuleListBuilder_ == null) { - return policyRuleList_.size(); + public int getPolicyRuleDeviceListCount() { + if (policyRuleDeviceListBuilder_ == null) { + return policyRuleDeviceList_.size(); } else { - return policyRuleListBuilder_.getCount(); + return policyRuleDeviceListBuilder_.getCount(); } } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public policy.Policy.PolicyRule getPolicyRuleList(int index) { - if (policyRuleListBuilder_ == null) { - return policyRuleList_.get(index); + public policy.Policy.PolicyRuleDevice getPolicyRuleDeviceList(int index) { + if (policyRuleDeviceListBuilder_ == null) { + return policyRuleDeviceList_.get(index); } else { - return policyRuleListBuilder_.getMessage(index); + return policyRuleDeviceListBuilder_.getMessage(index); } } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder setPolicyRuleList( - int index, policy.Policy.PolicyRule value) { - if (policyRuleListBuilder_ == null) { + public Builder setPolicyRuleDeviceList( + int index, policy.Policy.PolicyRuleDevice value) { + if (policyRuleDeviceListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensurePolicyRuleListIsMutable(); - policyRuleList_.set(index, value); + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.set(index, value); onChanged(); } else { - policyRuleListBuilder_.setMessage(index, value); + policyRuleDeviceListBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder setPolicyRuleList( - int index, policy.Policy.PolicyRule.Builder builderForValue) { - if (policyRuleListBuilder_ == null) { - ensurePolicyRuleListIsMutable(); - policyRuleList_.set(index, builderForValue.build()); + public Builder setPolicyRuleDeviceList( + int index, policy.Policy.PolicyRuleDevice.Builder builderForValue) { + if (policyRuleDeviceListBuilder_ == null) { + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.set(index, builderForValue.build()); onChanged(); } else { - policyRuleListBuilder_.setMessage(index, builderForValue.build()); + policyRuleDeviceListBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder addPolicyRuleList(policy.Policy.PolicyRule value) { - if (policyRuleListBuilder_ == null) { + public Builder addPolicyRuleDeviceList(policy.Policy.PolicyRuleDevice value) { + if (policyRuleDeviceListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensurePolicyRuleListIsMutable(); - policyRuleList_.add(value); + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.add(value); onChanged(); } else { - policyRuleListBuilder_.addMessage(value); + policyRuleDeviceListBuilder_.addMessage(value); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder addPolicyRuleList( - int index, policy.Policy.PolicyRule value) { - if (policyRuleListBuilder_ == null) { + public Builder addPolicyRuleDeviceList( + int index, policy.Policy.PolicyRuleDevice value) { + if (policyRuleDeviceListBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensurePolicyRuleListIsMutable(); - policyRuleList_.add(index, value); + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.add(index, value); onChanged(); } else { - policyRuleListBuilder_.addMessage(index, value); + policyRuleDeviceListBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder addPolicyRuleList( - policy.Policy.PolicyRule.Builder builderForValue) { - if (policyRuleListBuilder_ == null) { - ensurePolicyRuleListIsMutable(); - policyRuleList_.add(builderForValue.build()); + public Builder addPolicyRuleDeviceList( + policy.Policy.PolicyRuleDevice.Builder builderForValue) { + if (policyRuleDeviceListBuilder_ == null) { + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.add(builderForValue.build()); onChanged(); } else { - policyRuleListBuilder_.addMessage(builderForValue.build()); + policyRuleDeviceListBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder addPolicyRuleList( - int index, policy.Policy.PolicyRule.Builder builderForValue) { - if (policyRuleListBuilder_ == null) { - ensurePolicyRuleListIsMutable(); - policyRuleList_.add(index, builderForValue.build()); + public Builder addPolicyRuleDeviceList( + int index, policy.Policy.PolicyRuleDevice.Builder builderForValue) { + if (policyRuleDeviceListBuilder_ == null) { + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.add(index, builderForValue.build()); onChanged(); } else { - policyRuleListBuilder_.addMessage(index, builderForValue.build()); + policyRuleDeviceListBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder addAllPolicyRuleList( - java.lang.Iterable<? extends policy.Policy.PolicyRule> values) { - if (policyRuleListBuilder_ == null) { - ensurePolicyRuleListIsMutable(); + public Builder addAllPolicyRuleDeviceList( + java.lang.Iterable<? extends policy.Policy.PolicyRuleDevice> values) { + if (policyRuleDeviceListBuilder_ == null) { + ensurePolicyRuleDeviceListIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, policyRuleList_); + values, policyRuleDeviceList_); onChanged(); } else { - policyRuleListBuilder_.addAllMessages(values); + policyRuleDeviceListBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder clearPolicyRuleList() { - if (policyRuleListBuilder_ == null) { - policyRuleList_ = java.util.Collections.emptyList(); + public Builder clearPolicyRuleDeviceList() { + if (policyRuleDeviceListBuilder_ == null) { + policyRuleDeviceList_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - policyRuleListBuilder_.clear(); + policyRuleDeviceListBuilder_.clear(); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public Builder removePolicyRuleList(int index) { - if (policyRuleListBuilder_ == null) { - ensurePolicyRuleListIsMutable(); - policyRuleList_.remove(index); + public Builder removePolicyRuleDeviceList(int index) { + if (policyRuleDeviceListBuilder_ == null) { + ensurePolicyRuleDeviceListIsMutable(); + policyRuleDeviceList_.remove(index); onChanged(); } else { - policyRuleListBuilder_.remove(index); + policyRuleDeviceListBuilder_.remove(index); } return this; } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public policy.Policy.PolicyRule.Builder getPolicyRuleListBuilder( + public policy.Policy.PolicyRuleDevice.Builder getPolicyRuleDeviceListBuilder( int index) { - return getPolicyRuleListFieldBuilder().getBuilder(index); + return getPolicyRuleDeviceListFieldBuilder().getBuilder(index); } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public policy.Policy.PolicyRuleOrBuilder getPolicyRuleListOrBuilder( + public policy.Policy.PolicyRuleDeviceOrBuilder getPolicyRuleDeviceListOrBuilder( int index) { - if (policyRuleListBuilder_ == null) { - return policyRuleList_.get(index); } else { - return policyRuleListBuilder_.getMessageOrBuilder(index); + if (policyRuleDeviceListBuilder_ == null) { + return policyRuleDeviceList_.get(index); } else { + return policyRuleDeviceListBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public java.util.List<? extends policy.Policy.PolicyRuleOrBuilder> - getPolicyRuleListOrBuilderList() { - if (policyRuleListBuilder_ != null) { - return policyRuleListBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends policy.Policy.PolicyRuleDeviceOrBuilder> + getPolicyRuleDeviceListOrBuilderList() { + if (policyRuleDeviceListBuilder_ != null) { + return policyRuleDeviceListBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(policyRuleList_); + return java.util.Collections.unmodifiableList(policyRuleDeviceList_); } } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public policy.Policy.PolicyRule.Builder addPolicyRuleListBuilder() { - return getPolicyRuleListFieldBuilder().addBuilder( - policy.Policy.PolicyRule.getDefaultInstance()); + public policy.Policy.PolicyRuleDevice.Builder addPolicyRuleDeviceListBuilder() { + return getPolicyRuleDeviceListFieldBuilder().addBuilder( + policy.Policy.PolicyRuleDevice.getDefaultInstance()); } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public policy.Policy.PolicyRule.Builder addPolicyRuleListBuilder( + public policy.Policy.PolicyRuleDevice.Builder addPolicyRuleDeviceListBuilder( int index) { - return getPolicyRuleListFieldBuilder().addBuilder( - index, policy.Policy.PolicyRule.getDefaultInstance()); + return getPolicyRuleDeviceListFieldBuilder().addBuilder( + index, policy.Policy.PolicyRuleDevice.getDefaultInstance()); } /** - * <code>repeated .policy.PolicyRule policyRuleList = 1;</code> + * <code>repeated .policy.PolicyRuleDevice policyRuleDeviceList = 1;</code> */ - public java.util.List<policy.Policy.PolicyRule.Builder> - getPolicyRuleListBuilderList() { - return getPolicyRuleListFieldBuilder().getBuilderList(); + public java.util.List<policy.Policy.PolicyRuleDevice.Builder> + getPolicyRuleDeviceListBuilderList() { + return getPolicyRuleDeviceListFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - policy.Policy.PolicyRule, policy.Policy.PolicyRule.Builder, policy.Policy.PolicyRuleOrBuilder> - getPolicyRuleListFieldBuilder() { - if (policyRuleListBuilder_ == null) { - policyRuleListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - policy.Policy.PolicyRule, policy.Policy.PolicyRule.Builder, policy.Policy.PolicyRuleOrBuilder>( - policyRuleList_, + policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleDevice.Builder, policy.Policy.PolicyRuleDeviceOrBuilder> + getPolicyRuleDeviceListFieldBuilder() { + if (policyRuleDeviceListBuilder_ == null) { + policyRuleDeviceListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleDevice.Builder, policy.Policy.PolicyRuleDeviceOrBuilder>( + policyRuleDeviceList_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - policyRuleList_ = null; + policyRuleDeviceList_ = null; } - return policyRuleListBuilder_; + return policyRuleDeviceListBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -5906,41 +8439,41 @@ public final class Policy { } - // @@protoc_insertion_point(builder_scope:policy.PolicyRuleList) + // @@protoc_insertion_point(builder_scope:policy.PolicyRuleDeviceList) } - // @@protoc_insertion_point(class_scope:policy.PolicyRuleList) - private static final policy.Policy.PolicyRuleList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:policy.PolicyRuleDeviceList) + private static final policy.Policy.PolicyRuleDeviceList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new policy.Policy.PolicyRuleList(); + DEFAULT_INSTANCE = new policy.Policy.PolicyRuleDeviceList(); } - public static policy.Policy.PolicyRuleList getDefaultInstance() { + public static policy.Policy.PolicyRuleDeviceList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<PolicyRuleList> - PARSER = new com.google.protobuf.AbstractParser<PolicyRuleList>() { + private static final com.google.protobuf.Parser<PolicyRuleDeviceList> + PARSER = new com.google.protobuf.AbstractParser<PolicyRuleDeviceList>() { @java.lang.Override - public PolicyRuleList parsePartialFrom( + public PolicyRuleDeviceList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new PolicyRuleList(input, extensionRegistry); + return new PolicyRuleDeviceList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<PolicyRuleList> parser() { + public static com.google.protobuf.Parser<PolicyRuleDeviceList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<PolicyRuleList> getParserForType() { + public com.google.protobuf.Parser<PolicyRuleDeviceList> getParserForType() { return PARSER; } @java.lang.Override - public policy.Policy.PolicyRuleList getDefaultInstanceForType() { + public policy.Policy.PolicyRuleDeviceList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } @@ -5957,20 +8490,35 @@ public final class Policy { com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_policy_PolicyRuleState_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor - internal_static_policy_PolicyRuleEvent_descriptor; + internal_static_policy_PolicyRuleBasic_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_policy_PolicyRuleBasic_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_policy_PolicyRuleService_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_policy_PolicyRuleService_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_policy_PolicyRuleDevice_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_policy_PolicyRuleDevice_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_policy_PolicyRuleIdList_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_policy_PolicyRuleEvent_fieldAccessorTable; + internal_static_policy_PolicyRuleIdList_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor - internal_static_policy_PolicyRule_descriptor; + internal_static_policy_PolicyRuleServiceList_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_policy_PolicyRule_fieldAccessorTable; + internal_static_policy_PolicyRuleServiceList_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor - internal_static_policy_PolicyRuleList_descriptor; + internal_static_policy_PolicyRuleDeviceList_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_policy_PolicyRuleList_fieldAccessorTable; + internal_static_policy_PolicyRuleDeviceList_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { @@ -5983,35 +8531,49 @@ public final class Policy { "\n\014policy.proto\022\006policy\032\rcontext.proto\032\026p" + "olicy-condition.proto\032\023policy-action.pro" + "to\"+\n\014PolicyRuleId\022\033\n\004uuid\030\001 \001(\0132\r.conte" + - "xt.Uuid\"b\n\017PolicyRuleState\022#\n\014policyRule" + - "Id\030\001 \001(\0132\r.context.Uuid\022*\n\017policyRuleSta" + - "te\030\002 \001(\0162\021.policy.RuleState\"0\n\017PolicyRul" + - "eEvent\022\035\n\005event\030\001 \001(\0132\016.context.Event\"\204\003" + - "\n\nPolicyRule\022*\n\014policyRuleId\030\001 \001(\0132\024.pol" + - "icy.PolicyRuleId\022.\n\016policyRuleType\030\002 \001(\016" + - "2\026.policy.PolicyRuleType\022\020\n\010priority\030\003 \001" + - "(\r\022&\n\005event\030\004 \001(\0132\027.policy.PolicyRuleEve" + - "nt\0222\n\rconditionList\030\005 \003(\0132\033.policy.Polic" + - "yRuleCondition\0220\n\017booleanOperator\030\006 \001(\0162" + - "\027.policy.BooleanOperator\022,\n\nactionList\030\007" + - " \003(\0132\030.policy.PolicyRuleAction\022%\n\tservic" + - "eId\030\010 \001(\0132\022.context.ServiceId\022%\n\ndeviceL" + - "ist\030\t \003(\0132\021.context.DeviceId\"<\n\016PolicyRu" + - "leList\022*\n\016policyRuleList\030\001 \003(\0132\022.policy." + - "PolicyRule*G\n\tRuleState\022\023\n\017POLICY_INACTI" + - "VE\020\000\022\022\n\016POLICY_PLANNED\020\001\022\021\n\rPOLICY_ACTIV" + - "E\020\002*?\n\016PolicyRuleType\022\025\n\021POLICYTYPE_DEVI" + - "CE\020\000\022\026\n\022POLICYTYPE_NETWORK\020\0012\214\003\n\rPolicyS" + - "ervice\022:\n\tPolicyAdd\022\022.policy.PolicyRule\032" + - "\027.policy.PolicyRuleState\"\000\022=\n\014PolicyUpda" + - "te\022\022.policy.PolicyRule\032\027.policy.PolicyRu" + - "leState\"\000\022=\n\014PolicyDelete\022\022.policy.Polic" + - "yRule\032\027.policy.PolicyRuleState\"\000\0227\n\tGetP" + - "olicy\022\024.policy.PolicyRuleId\032\022.policy.Pol" + - "icyRule\"\000\022B\n\023GetPolicyByDeviceId\022\021.conte" + - "xt.DeviceId\032\026.policy.PolicyRuleList\"\000\022D\n" + - "\024GetPolicyByServiceId\022\022.context.ServiceI" + - "d\032\026.policy.PolicyRuleList\"\000b\006proto3" + "xt.Uuid\"=\n\017PolicyRuleState\022*\n\017policyRule" + + "State\030\001 \001(\0162\021.policy.RuleState\"\256\002\n\017Polic" + + "yRuleBasic\022*\n\014policyRuleId\030\001 \001(\0132\024.polic" + + "y.PolicyRuleId\0225\n\017policyRuleState\030\002 \001(\0132" + + "\027.policy.PolicyRuleStateH\000\210\001\001\022\020\n\010priorit" + + "y\030\003 \001(\r\0222\n\rconditionList\030\004 \003(\0132\033.policy." + + "PolicyRuleCondition\0220\n\017booleanOperator\030\005" + + " \001(\0162\027.policy.BooleanOperator\022,\n\nactionL" + + "ist\030\006 \003(\0132\030.policy.PolicyRuleActionB\022\n\020_" + + "policyRuleState\"\223\001\n\021PolicyRuleService\0220\n" + + "\017policyRuleBasic\030\001 \001(\0132\027.policy.PolicyRu" + + "leBasic\022%\n\tserviceId\030\002 \001(\0132\022.context.Ser" + + "viceId\022%\n\ndeviceList\030\003 \003(\0132\021.context.Dev" + + "iceId\"k\n\020PolicyRuleDevice\0220\n\017policyRuleB" + + "asic\030\001 \001(\0132\027.policy.PolicyRuleBasic\022%\n\nd" + + "eviceList\030\002 \003(\0132\021.context.DeviceId\"B\n\020Po" + + "licyRuleIdList\022.\n\020policyRuleIdList\030\001 \003(\013" + + "2\024.policy.PolicyRuleId\"Q\n\025PolicyRuleServ" + + "iceList\0228\n\025policyRuleServiceList\030\001 \003(\0132\031" + + ".policy.PolicyRuleService\"N\n\024PolicyRuleD" + + "eviceList\0226\n\024policyRuleDeviceList\030\001 \003(\0132" + + "\030.policy.PolicyRuleDevice*\365\001\n\tRuleState\022" + + "\024\n\020POLICY_UNDEFINED\020\000\022\021\n\rPOLICY_FAILED\020\001" + + "\022\023\n\017POLICY_INSERTED\020\002\022\024\n\020POLICY_VALIDATE" + + "D\020\003\022\026\n\022POLICY_PROVISIONED\020\004\022\021\n\rPOLICY_AC" + + "TIVE\020\005\022\023\n\017POLICY_ENFORCED\020\006\022\026\n\022POLICY_IN" + + "EFFECTIVE\020\007\022\024\n\020POLICY_EFFECTIVE\020\010\022\022\n\016POL" + + "ICY_UPDATED\020\t\022\022\n\016POLICY_REMOVED\020\n2\323\004\n\rPo" + + "licyService\022H\n\020PolicyAddService\022\031.policy" + + ".PolicyRuleService\032\027.policy.PolicyRuleSt" + + "ate\"\000\022F\n\017PolicyAddDevice\022\030.policy.Policy" + + "RuleDevice\032\027.policy.PolicyRuleState\"\000\022K\n" + + "\023PolicyUpdateService\022\031.policy.PolicyRule" + + "Service\032\027.policy.PolicyRuleState\"\000\022I\n\022Po" + + "licyUpdateDevice\022\030.policy.PolicyRuleDevi" + + "ce\032\027.policy.PolicyRuleState\"\000\022?\n\014PolicyD" + + "elete\022\024.policy.PolicyRuleId\032\027.policy.Pol" + + "icyRuleState\"\000\022E\n\020GetPolicyService\022\024.pol" + + "icy.PolicyRuleId\032\031.policy.PolicyRuleServ" + + "ice\"\000\022C\n\017GetPolicyDevice\022\024.policy.Policy" + + "RuleId\032\030.policy.PolicyRuleDevice\"\000\022K\n\024Ge" + + "tPolicyByServiceId\022\022.context.ServiceId\032\035" + + ".policy.PolicyRuleServiceList\"\000b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -6031,25 +8593,43 @@ public final class Policy { internal_static_policy_PolicyRuleState_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_policy_PolicyRuleState_descriptor, - new java.lang.String[] { "PolicyRuleId", "PolicyRuleState", }); - internal_static_policy_PolicyRuleEvent_descriptor = + new java.lang.String[] { "PolicyRuleState", }); + internal_static_policy_PolicyRuleBasic_descriptor = getDescriptor().getMessageTypes().get(2); - internal_static_policy_PolicyRuleEvent_fieldAccessorTable = new + internal_static_policy_PolicyRuleBasic_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_policy_PolicyRuleEvent_descriptor, - new java.lang.String[] { "Event", }); - internal_static_policy_PolicyRule_descriptor = + internal_static_policy_PolicyRuleBasic_descriptor, + new java.lang.String[] { "PolicyRuleId", "PolicyRuleState", "Priority", "ConditionList", "BooleanOperator", "ActionList", "PolicyRuleState", }); + internal_static_policy_PolicyRuleService_descriptor = getDescriptor().getMessageTypes().get(3); - internal_static_policy_PolicyRule_fieldAccessorTable = new + internal_static_policy_PolicyRuleService_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_policy_PolicyRule_descriptor, - new java.lang.String[] { "PolicyRuleId", "PolicyRuleType", "Priority", "Event", "ConditionList", "BooleanOperator", "ActionList", "ServiceId", "DeviceList", }); - internal_static_policy_PolicyRuleList_descriptor = + internal_static_policy_PolicyRuleService_descriptor, + new java.lang.String[] { "PolicyRuleBasic", "ServiceId", "DeviceList", }); + internal_static_policy_PolicyRuleDevice_descriptor = getDescriptor().getMessageTypes().get(4); - internal_static_policy_PolicyRuleList_fieldAccessorTable = new + internal_static_policy_PolicyRuleDevice_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_policy_PolicyRuleDevice_descriptor, + new java.lang.String[] { "PolicyRuleBasic", "DeviceList", }); + internal_static_policy_PolicyRuleIdList_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_policy_PolicyRuleIdList_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_policy_PolicyRuleIdList_descriptor, + new java.lang.String[] { "PolicyRuleIdList", }); + internal_static_policy_PolicyRuleServiceList_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_policy_PolicyRuleServiceList_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_policy_PolicyRuleServiceList_descriptor, + new java.lang.String[] { "PolicyRuleServiceList", }); + internal_static_policy_PolicyRuleDeviceList_descriptor = + getDescriptor().getMessageTypes().get(7); + internal_static_policy_PolicyRuleDeviceList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_policy_PolicyRuleList_descriptor, - new java.lang.String[] { "PolicyRuleList", }); + internal_static_policy_PolicyRuleDeviceList_descriptor, + new java.lang.String[] { "PolicyRuleDeviceList", }); context.ContextOuterClass.getDescriptor(); policy.PolicyCondition.getDescriptor(); policy.PolicyAction.getDescriptor(); diff --git a/src/policy/target/generated-sources/grpc/policy/PolicyService.java b/src/policy/target/generated-sources/grpc/policy/PolicyService.java index 8c2e637f5dcf6b5783dd68900a03a72e58cc6206..277fbbfc5012570bf43a81fbb1da5e3e9211a49e 100644 --- a/src/policy/target/generated-sources/grpc/policy/PolicyService.java +++ b/src/policy/target/generated-sources/grpc/policy/PolicyService.java @@ -8,17 +8,21 @@ comments = "Source: policy.proto") public interface PolicyService extends MutinyService { - io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAdd(policy.Policy.PolicyRule request); + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddService(policy.Policy.PolicyRuleService request); - io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdate(policy.Policy.PolicyRule request); + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddDevice(policy.Policy.PolicyRuleDevice request); - io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRule request); + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateService(policy.Policy.PolicyRuleService request); - io.smallrye.mutiny.Uni<policy.Policy.PolicyRule> getPolicy(policy.Policy.PolicyRuleId request); + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateDevice(policy.Policy.PolicyRuleDevice request); - io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByDeviceId(context.ContextOuterClass.DeviceId request); + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRuleId request); - io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request); + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleService> getPolicyService(policy.Policy.PolicyRuleId request); + + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleDevice> getPolicyDevice(policy.Policy.PolicyRuleId request); + + io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleServiceList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request); diff --git a/src/policy/target/generated-sources/grpc/policy/PolicyServiceBean.java b/src/policy/target/generated-sources/grpc/policy/PolicyServiceBean.java index 08c0e47d9fbf9b232553fd4ce1a9c7e948f42519..ada3eeaec2f779759a0b6ff7cb5724098fc9c186 100644 --- a/src/policy/target/generated-sources/grpc/policy/PolicyServiceBean.java +++ b/src/policy/target/generated-sources/grpc/policy/PolicyServiceBean.java @@ -16,23 +16,39 @@ public class PolicyServiceBean extends MutinyPolicyServiceGrpc.PolicyServiceImpl } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAdd(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddService(policy.Policy.PolicyRuleService request) { try { - return delegate.policyAdd(request); + return delegate.policyAddService(request); } catch (UnsupportedOperationException e) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdate(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddDevice(policy.Policy.PolicyRuleDevice request) { try { - return delegate.policyUpdate(request); + return delegate.policyAddDevice(request); } catch (UnsupportedOperationException e) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateService(policy.Policy.PolicyRuleService request) { + try { + return delegate.policyUpdateService(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateDevice(policy.Policy.PolicyRuleDevice request) { + try { + return delegate.policyUpdateDevice(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRuleId request) { try { return delegate.policyDelete(request); } catch (UnsupportedOperationException e) { @@ -40,23 +56,23 @@ public class PolicyServiceBean extends MutinyPolicyServiceGrpc.PolicyServiceImpl } } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRule> getPolicy(policy.Policy.PolicyRuleId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleService> getPolicyService(policy.Policy.PolicyRuleId request) { try { - return delegate.getPolicy(request); + return delegate.getPolicyService(request); } catch (UnsupportedOperationException e) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByDeviceId(context.ContextOuterClass.DeviceId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleDevice> getPolicyDevice(policy.Policy.PolicyRuleId request) { try { - return delegate.getPolicyByDeviceId(request); + return delegate.getPolicyDevice(request); } catch (UnsupportedOperationException e) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleServiceList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { try { return delegate.getPolicyByServiceId(request); } catch (UnsupportedOperationException e) { diff --git a/src/policy/target/generated-sources/grpc/policy/PolicyServiceClient.java b/src/policy/target/generated-sources/grpc/policy/PolicyServiceClient.java index 6d447719767146f965aa0f82c72c684d2c0a37bb..5f5af2002955123b646ebba86f013d79326f5b8b 100644 --- a/src/policy/target/generated-sources/grpc/policy/PolicyServiceClient.java +++ b/src/policy/target/generated-sources/grpc/policy/PolicyServiceClient.java @@ -21,27 +21,35 @@ public class PolicyServiceClient implements PolicyService, MutinyClient<MutinyPo } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAdd(policy.Policy.PolicyRule request) { - return stub.policyAdd(request); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddService(policy.Policy.PolicyRuleService request) { + return stub.policyAddService(request); } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdate(policy.Policy.PolicyRule request) { - return stub.policyUpdate(request); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyAddDevice(policy.Policy.PolicyRuleDevice request) { + return stub.policyAddDevice(request); } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRule request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateService(policy.Policy.PolicyRuleService request) { + return stub.policyUpdateService(request); + } + @Override + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyUpdateDevice(policy.Policy.PolicyRuleDevice request) { + return stub.policyUpdateDevice(request); + } + @Override + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleState> policyDelete(policy.Policy.PolicyRuleId request) { return stub.policyDelete(request); } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRule> getPolicy(policy.Policy.PolicyRuleId request) { - return stub.getPolicy(request); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleService> getPolicyService(policy.Policy.PolicyRuleId request) { + return stub.getPolicyService(request); } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByDeviceId(context.ContextOuterClass.DeviceId request) { - return stub.getPolicyByDeviceId(request); + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleDevice> getPolicyDevice(policy.Policy.PolicyRuleId request) { + return stub.getPolicyDevice(request); } @Override - public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { + public io.smallrye.mutiny.Uni<policy.Policy.PolicyRuleServiceList> getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { return stub.getPolicyByServiceId(request); } diff --git a/src/policy/target/generated-sources/grpc/policy/PolicyServiceGrpc.java b/src/policy/target/generated-sources/grpc/policy/PolicyServiceGrpc.java index 76cba32684b0d766bfc9ed58dc6f93cd239d4431..af57ac56746c2d1943a455a53b9ce6fc02228692 100644 --- a/src/policy/target/generated-sources/grpc/policy/PolicyServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/policy/PolicyServiceGrpc.java @@ -14,89 +14,151 @@ public final class PolicyServiceGrpc { public static final String SERVICE_NAME = "policy.PolicyService"; // Static method descriptors that strictly reflect the proto. - private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRule, - policy.Policy.PolicyRuleState> getPolicyAddMethod; + private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRuleService, + policy.Policy.PolicyRuleState> getPolicyAddServiceMethod; @io.grpc.stub.annotations.RpcMethod( - fullMethodName = SERVICE_NAME + '/' + "PolicyAdd", - requestType = policy.Policy.PolicyRule.class, + fullMethodName = SERVICE_NAME + '/' + "PolicyAddService", + requestType = policy.Policy.PolicyRuleService.class, responseType = policy.Policy.PolicyRuleState.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) - public static io.grpc.MethodDescriptor<policy.Policy.PolicyRule, - policy.Policy.PolicyRuleState> getPolicyAddMethod() { - io.grpc.MethodDescriptor<policy.Policy.PolicyRule, policy.Policy.PolicyRuleState> getPolicyAddMethod; - if ((getPolicyAddMethod = PolicyServiceGrpc.getPolicyAddMethod) == null) { + public static io.grpc.MethodDescriptor<policy.Policy.PolicyRuleService, + policy.Policy.PolicyRuleState> getPolicyAddServiceMethod() { + io.grpc.MethodDescriptor<policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleState> getPolicyAddServiceMethod; + if ((getPolicyAddServiceMethod = PolicyServiceGrpc.getPolicyAddServiceMethod) == null) { synchronized (PolicyServiceGrpc.class) { - if ((getPolicyAddMethod = PolicyServiceGrpc.getPolicyAddMethod) == null) { - PolicyServiceGrpc.getPolicyAddMethod = getPolicyAddMethod = - io.grpc.MethodDescriptor.<policy.Policy.PolicyRule, policy.Policy.PolicyRuleState>newBuilder() + if ((getPolicyAddServiceMethod = PolicyServiceGrpc.getPolicyAddServiceMethod) == null) { + PolicyServiceGrpc.getPolicyAddServiceMethod = getPolicyAddServiceMethod = + io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleState>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) - .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PolicyAdd")) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PolicyAddService")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - policy.Policy.PolicyRule.getDefaultInstance())) + policy.Policy.PolicyRuleService.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( policy.Policy.PolicyRuleState.getDefaultInstance())) - .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("PolicyAdd")) + .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("PolicyAddService")) .build(); } } } - return getPolicyAddMethod; + return getPolicyAddServiceMethod; } - private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRule, - policy.Policy.PolicyRuleState> getPolicyUpdateMethod; + private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRuleDevice, + policy.Policy.PolicyRuleState> getPolicyAddDeviceMethod; @io.grpc.stub.annotations.RpcMethod( - fullMethodName = SERVICE_NAME + '/' + "PolicyUpdate", - requestType = policy.Policy.PolicyRule.class, + fullMethodName = SERVICE_NAME + '/' + "PolicyAddDevice", + requestType = policy.Policy.PolicyRuleDevice.class, responseType = policy.Policy.PolicyRuleState.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) - public static io.grpc.MethodDescriptor<policy.Policy.PolicyRule, - policy.Policy.PolicyRuleState> getPolicyUpdateMethod() { - io.grpc.MethodDescriptor<policy.Policy.PolicyRule, policy.Policy.PolicyRuleState> getPolicyUpdateMethod; - if ((getPolicyUpdateMethod = PolicyServiceGrpc.getPolicyUpdateMethod) == null) { + public static io.grpc.MethodDescriptor<policy.Policy.PolicyRuleDevice, + policy.Policy.PolicyRuleState> getPolicyAddDeviceMethod() { + io.grpc.MethodDescriptor<policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleState> getPolicyAddDeviceMethod; + if ((getPolicyAddDeviceMethod = PolicyServiceGrpc.getPolicyAddDeviceMethod) == null) { synchronized (PolicyServiceGrpc.class) { - if ((getPolicyUpdateMethod = PolicyServiceGrpc.getPolicyUpdateMethod) == null) { - PolicyServiceGrpc.getPolicyUpdateMethod = getPolicyUpdateMethod = - io.grpc.MethodDescriptor.<policy.Policy.PolicyRule, policy.Policy.PolicyRuleState>newBuilder() + if ((getPolicyAddDeviceMethod = PolicyServiceGrpc.getPolicyAddDeviceMethod) == null) { + PolicyServiceGrpc.getPolicyAddDeviceMethod = getPolicyAddDeviceMethod = + io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleState>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) - .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PolicyUpdate")) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PolicyAddDevice")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - policy.Policy.PolicyRule.getDefaultInstance())) + policy.Policy.PolicyRuleDevice.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( policy.Policy.PolicyRuleState.getDefaultInstance())) - .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("PolicyUpdate")) + .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("PolicyAddDevice")) .build(); } } } - return getPolicyUpdateMethod; + return getPolicyAddDeviceMethod; } - private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRule, + private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRuleService, + policy.Policy.PolicyRuleState> getPolicyUpdateServiceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "PolicyUpdateService", + requestType = policy.Policy.PolicyRuleService.class, + responseType = policy.Policy.PolicyRuleState.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<policy.Policy.PolicyRuleService, + policy.Policy.PolicyRuleState> getPolicyUpdateServiceMethod() { + io.grpc.MethodDescriptor<policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleState> getPolicyUpdateServiceMethod; + if ((getPolicyUpdateServiceMethod = PolicyServiceGrpc.getPolicyUpdateServiceMethod) == null) { + synchronized (PolicyServiceGrpc.class) { + if ((getPolicyUpdateServiceMethod = PolicyServiceGrpc.getPolicyUpdateServiceMethod) == null) { + PolicyServiceGrpc.getPolicyUpdateServiceMethod = getPolicyUpdateServiceMethod = + io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleState>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PolicyUpdateService")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + policy.Policy.PolicyRuleService.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + policy.Policy.PolicyRuleState.getDefaultInstance())) + .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("PolicyUpdateService")) + .build(); + } + } + } + return getPolicyUpdateServiceMethod; + } + + private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRuleDevice, + policy.Policy.PolicyRuleState> getPolicyUpdateDeviceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "PolicyUpdateDevice", + requestType = policy.Policy.PolicyRuleDevice.class, + responseType = policy.Policy.PolicyRuleState.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<policy.Policy.PolicyRuleDevice, + policy.Policy.PolicyRuleState> getPolicyUpdateDeviceMethod() { + io.grpc.MethodDescriptor<policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleState> getPolicyUpdateDeviceMethod; + if ((getPolicyUpdateDeviceMethod = PolicyServiceGrpc.getPolicyUpdateDeviceMethod) == null) { + synchronized (PolicyServiceGrpc.class) { + if ((getPolicyUpdateDeviceMethod = PolicyServiceGrpc.getPolicyUpdateDeviceMethod) == null) { + PolicyServiceGrpc.getPolicyUpdateDeviceMethod = getPolicyUpdateDeviceMethod = + io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleState>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PolicyUpdateDevice")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + policy.Policy.PolicyRuleDevice.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + policy.Policy.PolicyRuleState.getDefaultInstance())) + .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("PolicyUpdateDevice")) + .build(); + } + } + } + return getPolicyUpdateDeviceMethod; + } + + private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleState> getPolicyDeleteMethod; @io.grpc.stub.annotations.RpcMethod( fullMethodName = SERVICE_NAME + '/' + "PolicyDelete", - requestType = policy.Policy.PolicyRule.class, + requestType = policy.Policy.PolicyRuleId.class, responseType = policy.Policy.PolicyRuleState.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) - public static io.grpc.MethodDescriptor<policy.Policy.PolicyRule, + public static io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleState> getPolicyDeleteMethod() { - io.grpc.MethodDescriptor<policy.Policy.PolicyRule, policy.Policy.PolicyRuleState> getPolicyDeleteMethod; + io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleState> getPolicyDeleteMethod; if ((getPolicyDeleteMethod = PolicyServiceGrpc.getPolicyDeleteMethod) == null) { synchronized (PolicyServiceGrpc.class) { if ((getPolicyDeleteMethod = PolicyServiceGrpc.getPolicyDeleteMethod) == null) { PolicyServiceGrpc.getPolicyDeleteMethod = getPolicyDeleteMethod = - io.grpc.MethodDescriptor.<policy.Policy.PolicyRule, policy.Policy.PolicyRuleState>newBuilder() + io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleState>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PolicyDelete")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - policy.Policy.PolicyRule.getDefaultInstance())) + policy.Policy.PolicyRuleId.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( policy.Policy.PolicyRuleState.getDefaultInstance())) .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("PolicyDelete")) @@ -108,90 +170,90 @@ public final class PolicyServiceGrpc { } private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, - policy.Policy.PolicyRule> getGetPolicyMethod; + policy.Policy.PolicyRuleService> getGetPolicyServiceMethod; @io.grpc.stub.annotations.RpcMethod( - fullMethodName = SERVICE_NAME + '/' + "GetPolicy", + fullMethodName = SERVICE_NAME + '/' + "GetPolicyService", requestType = policy.Policy.PolicyRuleId.class, - responseType = policy.Policy.PolicyRule.class, + responseType = policy.Policy.PolicyRuleService.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) public static io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, - policy.Policy.PolicyRule> getGetPolicyMethod() { - io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, policy.Policy.PolicyRule> getGetPolicyMethod; - if ((getGetPolicyMethod = PolicyServiceGrpc.getGetPolicyMethod) == null) { + policy.Policy.PolicyRuleService> getGetPolicyServiceMethod() { + io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleService> getGetPolicyServiceMethod; + if ((getGetPolicyServiceMethod = PolicyServiceGrpc.getGetPolicyServiceMethod) == null) { synchronized (PolicyServiceGrpc.class) { - if ((getGetPolicyMethod = PolicyServiceGrpc.getGetPolicyMethod) == null) { - PolicyServiceGrpc.getGetPolicyMethod = getGetPolicyMethod = - io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleId, policy.Policy.PolicyRule>newBuilder() + if ((getGetPolicyServiceMethod = PolicyServiceGrpc.getGetPolicyServiceMethod) == null) { + PolicyServiceGrpc.getGetPolicyServiceMethod = getGetPolicyServiceMethod = + io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleService>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) - .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetPolicy")) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetPolicyService")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( policy.Policy.PolicyRuleId.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - policy.Policy.PolicyRule.getDefaultInstance())) - .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("GetPolicy")) + policy.Policy.PolicyRuleService.getDefaultInstance())) + .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("GetPolicyService")) .build(); } } } - return getGetPolicyMethod; + return getGetPolicyServiceMethod; } - private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceId, - policy.Policy.PolicyRuleList> getGetPolicyByDeviceIdMethod; + private static volatile io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, + policy.Policy.PolicyRuleDevice> getGetPolicyDeviceMethod; @io.grpc.stub.annotations.RpcMethod( - fullMethodName = SERVICE_NAME + '/' + "GetPolicyByDeviceId", - requestType = context.ContextOuterClass.DeviceId.class, - responseType = policy.Policy.PolicyRuleList.class, + fullMethodName = SERVICE_NAME + '/' + "GetPolicyDevice", + requestType = policy.Policy.PolicyRuleId.class, + responseType = policy.Policy.PolicyRuleDevice.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) - public static io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceId, - policy.Policy.PolicyRuleList> getGetPolicyByDeviceIdMethod() { - io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceId, policy.Policy.PolicyRuleList> getGetPolicyByDeviceIdMethod; - if ((getGetPolicyByDeviceIdMethod = PolicyServiceGrpc.getGetPolicyByDeviceIdMethod) == null) { + public static io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, + policy.Policy.PolicyRuleDevice> getGetPolicyDeviceMethod() { + io.grpc.MethodDescriptor<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleDevice> getGetPolicyDeviceMethod; + if ((getGetPolicyDeviceMethod = PolicyServiceGrpc.getGetPolicyDeviceMethod) == null) { synchronized (PolicyServiceGrpc.class) { - if ((getGetPolicyByDeviceIdMethod = PolicyServiceGrpc.getGetPolicyByDeviceIdMethod) == null) { - PolicyServiceGrpc.getGetPolicyByDeviceIdMethod = getGetPolicyByDeviceIdMethod = - io.grpc.MethodDescriptor.<context.ContextOuterClass.DeviceId, policy.Policy.PolicyRuleList>newBuilder() + if ((getGetPolicyDeviceMethod = PolicyServiceGrpc.getGetPolicyDeviceMethod) == null) { + PolicyServiceGrpc.getGetPolicyDeviceMethod = getGetPolicyDeviceMethod = + io.grpc.MethodDescriptor.<policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleDevice>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) - .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetPolicyByDeviceId")) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetPolicyDevice")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - context.ContextOuterClass.DeviceId.getDefaultInstance())) + policy.Policy.PolicyRuleId.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - policy.Policy.PolicyRuleList.getDefaultInstance())) - .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("GetPolicyByDeviceId")) + policy.Policy.PolicyRuleDevice.getDefaultInstance())) + .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("GetPolicyDevice")) .build(); } } } - return getGetPolicyByDeviceIdMethod; + return getGetPolicyDeviceMethod; } private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceId, - policy.Policy.PolicyRuleList> getGetPolicyByServiceIdMethod; + policy.Policy.PolicyRuleServiceList> getGetPolicyByServiceIdMethod; @io.grpc.stub.annotations.RpcMethod( fullMethodName = SERVICE_NAME + '/' + "GetPolicyByServiceId", requestType = context.ContextOuterClass.ServiceId.class, - responseType = policy.Policy.PolicyRuleList.class, + responseType = policy.Policy.PolicyRuleServiceList.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) public static io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceId, - policy.Policy.PolicyRuleList> getGetPolicyByServiceIdMethod() { - io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceId, policy.Policy.PolicyRuleList> getGetPolicyByServiceIdMethod; + policy.Policy.PolicyRuleServiceList> getGetPolicyByServiceIdMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceId, policy.Policy.PolicyRuleServiceList> getGetPolicyByServiceIdMethod; if ((getGetPolicyByServiceIdMethod = PolicyServiceGrpc.getGetPolicyByServiceIdMethod) == null) { synchronized (PolicyServiceGrpc.class) { if ((getGetPolicyByServiceIdMethod = PolicyServiceGrpc.getGetPolicyByServiceIdMethod) == null) { PolicyServiceGrpc.getGetPolicyByServiceIdMethod = getGetPolicyByServiceIdMethod = - io.grpc.MethodDescriptor.<context.ContextOuterClass.ServiceId, policy.Policy.PolicyRuleList>newBuilder() + io.grpc.MethodDescriptor.<context.ContextOuterClass.ServiceId, policy.Policy.PolicyRuleServiceList>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetPolicyByServiceId")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( context.ContextOuterClass.ServiceId.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - policy.Policy.PolicyRuleList.getDefaultInstance())) + policy.Policy.PolicyRuleServiceList.getDefaultInstance())) .setSchemaDescriptor(new PolicyServiceMethodDescriptorSupplier("GetPolicyByServiceId")) .build(); } @@ -250,89 +312,117 @@ public final class PolicyServiceGrpc { /** */ - public void policyAdd(policy.Policy.PolicyRule request, + public void policyAddService(policy.Policy.PolicyRuleService request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPolicyAddServiceMethod(), responseObserver); + } + + /** + */ + public void policyAddDevice(policy.Policy.PolicyRuleDevice request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPolicyAddDeviceMethod(), responseObserver); + } + + /** + */ + public void policyUpdateService(policy.Policy.PolicyRuleService request, io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { - io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPolicyAddMethod(), responseObserver); + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPolicyUpdateServiceMethod(), responseObserver); } /** */ - public void policyUpdate(policy.Policy.PolicyRule request, + public void policyUpdateDevice(policy.Policy.PolicyRuleDevice request, io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { - io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPolicyUpdateMethod(), responseObserver); + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPolicyUpdateDeviceMethod(), responseObserver); } /** */ - public void policyDelete(policy.Policy.PolicyRule request, + public void policyDelete(policy.Policy.PolicyRuleId request, io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPolicyDeleteMethod(), responseObserver); } /** */ - public void getPolicy(policy.Policy.PolicyRuleId request, - io.grpc.stub.StreamObserver<policy.Policy.PolicyRule> responseObserver) { - io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetPolicyMethod(), responseObserver); + public void getPolicyService(policy.Policy.PolicyRuleId request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleService> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetPolicyServiceMethod(), responseObserver); } /** */ - public void getPolicyByDeviceId(context.ContextOuterClass.DeviceId request, - io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList> responseObserver) { - io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetPolicyByDeviceIdMethod(), responseObserver); + public void getPolicyDevice(policy.Policy.PolicyRuleId request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleDevice> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetPolicyDeviceMethod(), responseObserver); } /** */ public void getPolicyByServiceId(context.ContextOuterClass.ServiceId request, - io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList> responseObserver) { + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleServiceList> responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetPolicyByServiceIdMethod(), responseObserver); } @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) .addMethod( - getPolicyAddMethod(), + getPolicyAddServiceMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< - policy.Policy.PolicyRule, + policy.Policy.PolicyRuleService, policy.Policy.PolicyRuleState>( - this, METHODID_POLICY_ADD))) + this, METHODID_POLICY_ADD_SERVICE))) .addMethod( - getPolicyUpdateMethod(), + getPolicyAddDeviceMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< - policy.Policy.PolicyRule, + policy.Policy.PolicyRuleDevice, policy.Policy.PolicyRuleState>( - this, METHODID_POLICY_UPDATE))) + this, METHODID_POLICY_ADD_DEVICE))) + .addMethod( + getPolicyUpdateServiceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + policy.Policy.PolicyRuleService, + policy.Policy.PolicyRuleState>( + this, METHODID_POLICY_UPDATE_SERVICE))) + .addMethod( + getPolicyUpdateDeviceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + policy.Policy.PolicyRuleDevice, + policy.Policy.PolicyRuleState>( + this, METHODID_POLICY_UPDATE_DEVICE))) .addMethod( getPolicyDeleteMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< - policy.Policy.PolicyRule, + policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleState>( this, METHODID_POLICY_DELETE))) .addMethod( - getGetPolicyMethod(), + getGetPolicyServiceMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< policy.Policy.PolicyRuleId, - policy.Policy.PolicyRule>( - this, METHODID_GET_POLICY))) + policy.Policy.PolicyRuleService>( + this, METHODID_GET_POLICY_SERVICE))) .addMethod( - getGetPolicyByDeviceIdMethod(), + getGetPolicyDeviceMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< - context.ContextOuterClass.DeviceId, - policy.Policy.PolicyRuleList>( - this, METHODID_GET_POLICY_BY_DEVICE_ID))) + policy.Policy.PolicyRuleId, + policy.Policy.PolicyRuleDevice>( + this, METHODID_GET_POLICY_DEVICE))) .addMethod( getGetPolicyByServiceIdMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< context.ContextOuterClass.ServiceId, - policy.Policy.PolicyRuleList>( + policy.Policy.PolicyRuleServiceList>( this, METHODID_GET_POLICY_BY_SERVICE_ID))) .build(); } @@ -354,23 +444,39 @@ public final class PolicyServiceGrpc { /** */ - public void policyAdd(policy.Policy.PolicyRule request, + public void policyAddService(policy.Policy.PolicyRuleService request, io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { io.grpc.stub.ClientCalls.asyncUnaryCall( - getChannel().newCall(getPolicyAddMethod(), getCallOptions()), request, responseObserver); + getChannel().newCall(getPolicyAddServiceMethod(), getCallOptions()), request, responseObserver); } /** */ - public void policyUpdate(policy.Policy.PolicyRule request, + public void policyAddDevice(policy.Policy.PolicyRuleDevice request, io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { io.grpc.stub.ClientCalls.asyncUnaryCall( - getChannel().newCall(getPolicyUpdateMethod(), getCallOptions()), request, responseObserver); + getChannel().newCall(getPolicyAddDeviceMethod(), getCallOptions()), request, responseObserver); } /** */ - public void policyDelete(policy.Policy.PolicyRule request, + public void policyUpdateService(policy.Policy.PolicyRuleService request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getPolicyUpdateServiceMethod(), getCallOptions()), request, responseObserver); + } + + /** + */ + public void policyUpdateDevice(policy.Policy.PolicyRuleDevice request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getPolicyUpdateDeviceMethod(), getCallOptions()), request, responseObserver); + } + + /** + */ + public void policyDelete(policy.Policy.PolicyRuleId request, io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState> responseObserver) { io.grpc.stub.ClientCalls.asyncUnaryCall( getChannel().newCall(getPolicyDeleteMethod(), getCallOptions()), request, responseObserver); @@ -378,24 +484,24 @@ public final class PolicyServiceGrpc { /** */ - public void getPolicy(policy.Policy.PolicyRuleId request, - io.grpc.stub.StreamObserver<policy.Policy.PolicyRule> responseObserver) { + public void getPolicyService(policy.Policy.PolicyRuleId request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleService> responseObserver) { io.grpc.stub.ClientCalls.asyncUnaryCall( - getChannel().newCall(getGetPolicyMethod(), getCallOptions()), request, responseObserver); + getChannel().newCall(getGetPolicyServiceMethod(), getCallOptions()), request, responseObserver); } /** */ - public void getPolicyByDeviceId(context.ContextOuterClass.DeviceId request, - io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList> responseObserver) { + public void getPolicyDevice(policy.Policy.PolicyRuleId request, + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleDevice> responseObserver) { io.grpc.stub.ClientCalls.asyncUnaryCall( - getChannel().newCall(getGetPolicyByDeviceIdMethod(), getCallOptions()), request, responseObserver); + getChannel().newCall(getGetPolicyDeviceMethod(), getCallOptions()), request, responseObserver); } /** */ public void getPolicyByServiceId(context.ContextOuterClass.ServiceId request, - io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList> responseObserver) { + io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleServiceList> responseObserver) { io.grpc.stub.ClientCalls.asyncUnaryCall( getChannel().newCall(getGetPolicyByServiceIdMethod(), getCallOptions()), request, responseObserver); } @@ -417,42 +523,56 @@ public final class PolicyServiceGrpc { /** */ - public policy.Policy.PolicyRuleState policyAdd(policy.Policy.PolicyRule request) { + public policy.Policy.PolicyRuleState policyAddService(policy.Policy.PolicyRuleService request) { return io.grpc.stub.ClientCalls.blockingUnaryCall( - getChannel(), getPolicyAddMethod(), getCallOptions(), request); + getChannel(), getPolicyAddServiceMethod(), getCallOptions(), request); } /** */ - public policy.Policy.PolicyRuleState policyUpdate(policy.Policy.PolicyRule request) { + public policy.Policy.PolicyRuleState policyAddDevice(policy.Policy.PolicyRuleDevice request) { return io.grpc.stub.ClientCalls.blockingUnaryCall( - getChannel(), getPolicyUpdateMethod(), getCallOptions(), request); + getChannel(), getPolicyAddDeviceMethod(), getCallOptions(), request); } /** */ - public policy.Policy.PolicyRuleState policyDelete(policy.Policy.PolicyRule request) { + public policy.Policy.PolicyRuleState policyUpdateService(policy.Policy.PolicyRuleService request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getPolicyUpdateServiceMethod(), getCallOptions(), request); + } + + /** + */ + public policy.Policy.PolicyRuleState policyUpdateDevice(policy.Policy.PolicyRuleDevice request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getPolicyUpdateDeviceMethod(), getCallOptions(), request); + } + + /** + */ + public policy.Policy.PolicyRuleState policyDelete(policy.Policy.PolicyRuleId request) { return io.grpc.stub.ClientCalls.blockingUnaryCall( getChannel(), getPolicyDeleteMethod(), getCallOptions(), request); } /** */ - public policy.Policy.PolicyRule getPolicy(policy.Policy.PolicyRuleId request) { + public policy.Policy.PolicyRuleService getPolicyService(policy.Policy.PolicyRuleId request) { return io.grpc.stub.ClientCalls.blockingUnaryCall( - getChannel(), getGetPolicyMethod(), getCallOptions(), request); + getChannel(), getGetPolicyServiceMethod(), getCallOptions(), request); } /** */ - public policy.Policy.PolicyRuleList getPolicyByDeviceId(context.ContextOuterClass.DeviceId request) { + public policy.Policy.PolicyRuleDevice getPolicyDevice(policy.Policy.PolicyRuleId request) { return io.grpc.stub.ClientCalls.blockingUnaryCall( - getChannel(), getGetPolicyByDeviceIdMethod(), getCallOptions(), request); + getChannel(), getGetPolicyDeviceMethod(), getCallOptions(), request); } /** */ - public policy.Policy.PolicyRuleList getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { + public policy.Policy.PolicyRuleServiceList getPolicyByServiceId(context.ContextOuterClass.ServiceId request) { return io.grpc.stub.ClientCalls.blockingUnaryCall( getChannel(), getGetPolicyByServiceIdMethod(), getCallOptions(), request); } @@ -474,59 +594,77 @@ public final class PolicyServiceGrpc { /** */ - public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleState> policyAdd( - policy.Policy.PolicyRule request) { + public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleState> policyAddService( + policy.Policy.PolicyRuleService request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getPolicyAddServiceMethod(), getCallOptions()), request); + } + + /** + */ + public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleState> policyAddDevice( + policy.Policy.PolicyRuleDevice request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getPolicyAddDeviceMethod(), getCallOptions()), request); + } + + /** + */ + public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleState> policyUpdateService( + policy.Policy.PolicyRuleService request) { return io.grpc.stub.ClientCalls.futureUnaryCall( - getChannel().newCall(getPolicyAddMethod(), getCallOptions()), request); + getChannel().newCall(getPolicyUpdateServiceMethod(), getCallOptions()), request); } /** */ - public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleState> policyUpdate( - policy.Policy.PolicyRule request) { + public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleState> policyUpdateDevice( + policy.Policy.PolicyRuleDevice request) { return io.grpc.stub.ClientCalls.futureUnaryCall( - getChannel().newCall(getPolicyUpdateMethod(), getCallOptions()), request); + getChannel().newCall(getPolicyUpdateDeviceMethod(), getCallOptions()), request); } /** */ public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleState> policyDelete( - policy.Policy.PolicyRule request) { + policy.Policy.PolicyRuleId request) { return io.grpc.stub.ClientCalls.futureUnaryCall( getChannel().newCall(getPolicyDeleteMethod(), getCallOptions()), request); } /** */ - public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRule> getPolicy( + public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleService> getPolicyService( policy.Policy.PolicyRuleId request) { return io.grpc.stub.ClientCalls.futureUnaryCall( - getChannel().newCall(getGetPolicyMethod(), getCallOptions()), request); + getChannel().newCall(getGetPolicyServiceMethod(), getCallOptions()), request); } /** */ - public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleList> getPolicyByDeviceId( - context.ContextOuterClass.DeviceId request) { + public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleDevice> getPolicyDevice( + policy.Policy.PolicyRuleId request) { return io.grpc.stub.ClientCalls.futureUnaryCall( - getChannel().newCall(getGetPolicyByDeviceIdMethod(), getCallOptions()), request); + getChannel().newCall(getGetPolicyDeviceMethod(), getCallOptions()), request); } /** */ - public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleList> getPolicyByServiceId( + public com.google.common.util.concurrent.ListenableFuture<policy.Policy.PolicyRuleServiceList> getPolicyByServiceId( context.ContextOuterClass.ServiceId request) { return io.grpc.stub.ClientCalls.futureUnaryCall( getChannel().newCall(getGetPolicyByServiceIdMethod(), getCallOptions()), request); } } - private static final int METHODID_POLICY_ADD = 0; - private static final int METHODID_POLICY_UPDATE = 1; - private static final int METHODID_POLICY_DELETE = 2; - private static final int METHODID_GET_POLICY = 3; - private static final int METHODID_GET_POLICY_BY_DEVICE_ID = 4; - private static final int METHODID_GET_POLICY_BY_SERVICE_ID = 5; + private static final int METHODID_POLICY_ADD_SERVICE = 0; + private static final int METHODID_POLICY_ADD_DEVICE = 1; + private static final int METHODID_POLICY_UPDATE_SERVICE = 2; + private static final int METHODID_POLICY_UPDATE_DEVICE = 3; + private static final int METHODID_POLICY_DELETE = 4; + private static final int METHODID_GET_POLICY_SERVICE = 5; + private static final int METHODID_GET_POLICY_DEVICE = 6; + private static final int METHODID_GET_POLICY_BY_SERVICE_ID = 7; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -545,29 +683,37 @@ public final class PolicyServiceGrpc { @java.lang.SuppressWarnings("unchecked") public void invoke(Req request, io.grpc.stub.StreamObserver<Resp> responseObserver) { switch (methodId) { - case METHODID_POLICY_ADD: - serviceImpl.policyAdd((policy.Policy.PolicyRule) request, + case METHODID_POLICY_ADD_SERVICE: + serviceImpl.policyAddService((policy.Policy.PolicyRuleService) request, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver); + break; + case METHODID_POLICY_ADD_DEVICE: + serviceImpl.policyAddDevice((policy.Policy.PolicyRuleDevice) request, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver); + break; + case METHODID_POLICY_UPDATE_SERVICE: + serviceImpl.policyUpdateService((policy.Policy.PolicyRuleService) request, (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver); break; - case METHODID_POLICY_UPDATE: - serviceImpl.policyUpdate((policy.Policy.PolicyRule) request, + case METHODID_POLICY_UPDATE_DEVICE: + serviceImpl.policyUpdateDevice((policy.Policy.PolicyRuleDevice) request, (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver); break; case METHODID_POLICY_DELETE: - serviceImpl.policyDelete((policy.Policy.PolicyRule) request, + serviceImpl.policyDelete((policy.Policy.PolicyRuleId) request, (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleState>) responseObserver); break; - case METHODID_GET_POLICY: - serviceImpl.getPolicy((policy.Policy.PolicyRuleId) request, - (io.grpc.stub.StreamObserver<policy.Policy.PolicyRule>) responseObserver); + case METHODID_GET_POLICY_SERVICE: + serviceImpl.getPolicyService((policy.Policy.PolicyRuleId) request, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleService>) responseObserver); break; - case METHODID_GET_POLICY_BY_DEVICE_ID: - serviceImpl.getPolicyByDeviceId((context.ContextOuterClass.DeviceId) request, - (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList>) responseObserver); + case METHODID_GET_POLICY_DEVICE: + serviceImpl.getPolicyDevice((policy.Policy.PolicyRuleId) request, + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleDevice>) responseObserver); break; case METHODID_GET_POLICY_BY_SERVICE_ID: serviceImpl.getPolicyByServiceId((context.ContextOuterClass.ServiceId) request, - (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleList>) responseObserver); + (io.grpc.stub.StreamObserver<policy.Policy.PolicyRuleServiceList>) responseObserver); break; default: throw new AssertionError(); @@ -630,11 +776,13 @@ public final class PolicyServiceGrpc { if (result == null) { serviceDescriptor = result = io.grpc.ServiceDescriptor.newBuilder(SERVICE_NAME) .setSchemaDescriptor(new PolicyServiceFileDescriptorSupplier()) - .addMethod(getPolicyAddMethod()) - .addMethod(getPolicyUpdateMethod()) + .addMethod(getPolicyAddServiceMethod()) + .addMethod(getPolicyAddDeviceMethod()) + .addMethod(getPolicyUpdateServiceMethod()) + .addMethod(getPolicyUpdateDeviceMethod()) .addMethod(getPolicyDeleteMethod()) - .addMethod(getGetPolicyMethod()) - .addMethod(getGetPolicyByDeviceIdMethod()) + .addMethod(getGetPolicyServiceMethod()) + .addMethod(getGetPolicyDeviceMethod()) .addMethod(getGetPolicyByServiceIdMethod()) .build(); } diff --git a/src/policy/target/kubernetes/kubernetes.yml b/src/policy/target/kubernetes/kubernetes.yml index 3625e9d859ea0a58fc1aff47eeab15cb0434ff03..97929a86330aa71f708199fa3333764e0fd31e38 100644 --- a/src/policy/target/kubernetes/kubernetes.yml +++ b/src/policy/target/kubernetes/kubernetes.yml @@ -3,8 +3,8 @@ apiVersion: v1 kind: Service metadata: annotations: - app.quarkus.io/commit-id: 54b760b9045db694a08b0f291f52b28aa4d8c5d2 - app.quarkus.io/build-timestamp: 2022-05-23 - 13:57:10 +0000 + app.quarkus.io/commit-id: cfe69c57feb1d488c2dda620021e3c62d67fc3d3 + app.quarkus.io/build-timestamp: 2022-07-14 - 07:52:22 +0000 labels: app.kubernetes.io/name: policyservice app: policyservice @@ -14,9 +14,9 @@ spec: - name: http port: 8080 targetPort: 8080 - - name: grpc-server - port: 9999 - targetPort: 9999 + - name: grpc + port: 6060 + targetPort: 6060 selector: app.kubernetes.io/name: policyservice type: ClusterIP @@ -25,8 +25,8 @@ apiVersion: apps/v1 kind: Deployment metadata: annotations: - app.quarkus.io/commit-id: 54b760b9045db694a08b0f291f52b28aa4d8c5d2 - app.quarkus.io/build-timestamp: 2022-05-23 - 13:57:10 +0000 + app.quarkus.io/commit-id: cfe69c57feb1d488c2dda620021e3c62d67fc3d3 + app.quarkus.io/build-timestamp: 2022-07-14 - 07:52:22 +0000 labels: app: policyservice app.kubernetes.io/name: policyservice @@ -39,8 +39,8 @@ spec: template: metadata: annotations: - app.quarkus.io/commit-id: 54b760b9045db694a08b0f291f52b28aa4d8c5d2 - app.quarkus.io/build-timestamp: 2022-05-23 - 13:57:10 +0000 + app.quarkus.io/commit-id: cfe69c57feb1d488c2dda620021e3c62d67fc3d3 + app.quarkus.io/build-timestamp: 2022-07-14 - 07:52:22 +0000 labels: app: policyservice app.kubernetes.io/name: policyservice @@ -51,6 +51,12 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace + - name: MONITORING_SERVICE_HOST + value: monitoringservice + - name: SERVICE_SERVICE_HOST + value: serviceservice + - name: CONTEXT_SERVICE_HOST + value: contextservice image: registry.gitlab.com/teraflow-h2020/controller/policy:0.1.0 imagePullPolicy: Always livenessProbe: @@ -68,8 +74,8 @@ spec: - containerPort: 8080 name: http protocol: TCP - - containerPort: 9999 - name: grpc-server + - containerPort: 6060 + name: grpc protocol: TCP readinessProbe: failureThreshold: 3 diff --git a/src/webui/Config.py b/src/webui/Config.py index e7720a405e2874c3679f9f507df2fdffc610f84a..ffa55f5e3562bff75f2e18e411e2d9229c22f19f 100644 --- a/src/webui/Config.py +++ b/src/webui/Config.py @@ -36,3 +36,6 @@ CONTEXT_SERVICE_PORT = int(os.environ.get('CONTEXTSERVICE_SERVICE_PORT_GRPC', 10 DEVICE_SERVICE_ADDRESS = os.environ.get('DEVICESERVICE_SERVICE_HOST', 'deviceservice') DEVICE_SERVICE_PORT = int(os.environ.get('DEVICESERVICE_SERVICE_PORT_GRPC', 2020)) + +SERVICE_SERVICE_ADDRESS = os.environ.get('SERVICESERVICE_SERVICE_HOST', 'serviceservice') +SERVICE_SERVICE_PORT = int(os.environ.get('SERVICESERVICE_SERVICE_PORT_GRPC', 3030)) diff --git a/src/webui/Dockerfile b/src/webui/Dockerfile index c22ba2e8b4fe895a93ee944a740a4108ed1c0e4c..1e55ee411ed7f7c89a3d0ecad982f877c697057f 100644 --- a/src/webui/Dockerfile +++ b/src/webui/Dockerfile @@ -54,6 +54,9 @@ COPY --chown=webui:webui context/client/. context/client COPY --chown=webui:webui device/__init__.py device/__init__.py COPY --chown=webui:webui device/proto/. device/proto COPY --chown=webui:webui device/client/. device/client +COPY --chown=webui:webui service/__init__.py service/__init__.py +COPY --chown=webui:webui service/proto/. service/proto +COPY --chown=webui:webui service/client/. service/client COPY --chown=webui:webui webui/. webui # Start webui service diff --git a/src/webui/grafana_dashboard.json b/src/webui/grafana_dashboard.json index afe3ea1260cae8781fea1e29e30e2d1651ab7c2e..a845ac20c7861b86fd1931452b7802b3f1e57aa8 100644 --- a/src/webui/grafana_dashboard.json +++ b/src/webui/grafana_dashboard.json @@ -227,12 +227,12 @@ "current": { "selected": true, "text": [ - "R1-INF", - "R3-INF" + "R1-EMU", + "R3-EMU" ], "value": [ - "R1-INF", - "R3-INF" + "R1-EMU", + "R3-EMU" ] }, "datasource": null, @@ -257,12 +257,10 @@ "current": { "selected": true, "text": [ - "13/2/0", - "13/2/1" + "13/1/2" ], "value": [ - "13/2/0", - "13/2/1" + "13/1/2" ] }, "datasource": null, diff --git a/src/webui/service/__init__.py b/src/webui/service/__init__.py index d9755563ad60b2b897d96540a7ceaaa43f4d36dc..9ea6e58214c61fb7f693912097af2b4a17628371 100644 --- a/src/webui/service/__init__.py +++ b/src/webui/service/__init__.py @@ -51,8 +51,17 @@ def readiness(): def from_json(json_str): return json.loads(json_str) +class SetSubAppMiddleware(): + def __init__(self, app, web_app_root): + self.app = app + self.web_app_root = web_app_root -def create_app(use_config=None): + def __call__(self, environ, start_response): + environ['SCRIPT_NAME'] = self.web_app_root + environ['APPLICATION_ROOT'] = self.web_app_root + return self.app(environ, start_response) + +def create_app(use_config=None, web_app_root=None): app = Flask(__name__) if use_config: app.config.from_mapping(**use_config) @@ -64,6 +73,9 @@ def create_app(use_config=None): app.register_blueprint(healthz, url_prefix='/healthz') + from webui.service.js.routes import js + app.register_blueprint(js) + from webui.service.main.routes import main app.register_blueprint(main) @@ -80,4 +92,6 @@ def create_app(use_config=None): app.jinja_env.globals.update(get_working_context=get_working_context) + if web_app_root is not None: + app.wsgi_app = SetSubAppMiddleware(app.wsgi_app, web_app_root) return app diff --git a/src/webui/service/__main__.py b/src/webui/service/__main__.py index 5dd20aab74751390a11b32e9ae2c63aadb9e364e..9a41c91a1e8a519fef1ed244264c4692cac62756 100644 --- a/src/webui/service/__main__.py +++ b/src/webui/service/__main__.py @@ -24,6 +24,7 @@ def main(): metrics_port = os.environ.get('METRICS_PORT', METRICS_PORT ) host = os.environ.get('HOST', HOST ) debug = os.environ.get('DEBUG', DEBUG ) + web_app_root = os.environ.get('WEBUI_APPLICATION_ROOT', None ) logging.basicConfig(level=log_level) logger = logging.getLogger(__name__) @@ -40,7 +41,7 @@ def main(): app = create_app(use_config={ 'SECRET_KEY': SECRET_KEY, 'MAX_CONTENT_LENGTH': MAX_CONTENT_LENGTH, - }) + }, web_app_root=web_app_root) app.run(host=host, port=service_port, debug=debug) logger.info('Bye') diff --git a/src/webui/service/device/routes.py b/src/webui/service/device/routes.py index 1f9a6783c54ef14a72e9afb6db8e15b04fa20872..3e78222e9edbcbee6c52e111ac422e92e862011e 100644 --- a/src/webui/service/device/routes.py +++ b/src/webui/service/device/routes.py @@ -123,11 +123,10 @@ def delete(device_uuid): request.device_uuid.uuid = device_uuid device_client.connect() response = device_client.DeleteDevice(request) - device_client.close() - flash('Device deleted successfully!', 'success') + flash('Device "{:s}" deleted successfully!'.format(device_uuid), 'success') except Exception as e: - flash(f'Problem deleting the device. {e.details()}', 'danger') - + flash('Problem deleting device "{:s}": {:s}'.format(device_uuid, str(e.details())), 'danger') + current_app.logger.exception(e) return redirect(url_for('device.home')) diff --git a/src/webui/service/js/__init__.py b/src/webui/service/js/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..70a33251242c51f49140e596b8208a19dd5245f7 --- /dev/null +++ b/src/webui/service/js/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + diff --git a/src/webui/service/js/routes.py b/src/webui/service/js/routes.py new file mode 100644 index 0000000000000000000000000000000000000000..fee4109df048a29954ce924ef57ec62d6adc27fb --- /dev/null +++ b/src/webui/service/js/routes.py @@ -0,0 +1,25 @@ +# Copyright 2021-2023 H2020 TeraFlow (https://www.teraflow-h2020.eu/) +# +# Licensed 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. + +from flask import render_template, Blueprint + +js = Blueprint('js', __name__, url_prefix='/js') + +@js.get('site.js') +def site_js(): + return render_template('js/site.js') + +@js.get('topology.js') +def topology_js(): + return render_template('js/topology.js') diff --git a/src/webui/service/service/routes.py b/src/webui/service/service/routes.py index 17efe1c0973550f6b185dc4ce0a0f88e9e3a82d8..5eb18b2a1d25f743733dab567671ffe158bb3b57 100644 --- a/src/webui/service/service/routes.py +++ b/src/webui/service/service/routes.py @@ -15,14 +15,16 @@ import grpc from flask import current_app, redirect, render_template, Blueprint, flash, session, url_for from context.proto.context_pb2 import Service, ServiceId -from webui.Config import CONTEXT_SERVICE_ADDRESS, CONTEXT_SERVICE_PORT +from webui.Config import CONTEXT_SERVICE_ADDRESS, CONTEXT_SERVICE_PORT, SERVICE_SERVICE_ADDRESS, SERVICE_SERVICE_PORT from context.client.ContextClient import ContextClient +from service.client.ServiceClient import ServiceClient from webui.proto.context_pb2 import ContextId, ServiceList, ServiceTypeEnum, ServiceStatusEnum, ConfigActionEnum service = Blueprint('service', __name__, url_prefix='/service') context_client: ContextClient = ContextClient(CONTEXT_SERVICE_ADDRESS, CONTEXT_SERVICE_PORT) +service_client: ServiceClient = ServiceClient(SERVICE_SERVICE_ADDRESS, SERVICE_SERVICE_PORT) @service.get('/') def home(): @@ -61,7 +63,7 @@ def add(): return render_template('service/home.html') -@service.get('detail/<path:service_uuid>') +@service.get('<path:service_uuid>/detail') def detail(service_uuid: str): context_uuid = session.get('context_uuid', '-') if context_uuid == "-": @@ -82,6 +84,23 @@ def detail(service_uuid: str): return render_template('service/detail.html', service=response) -@service.get('delete/<path:service_uuid>') +@service.get('<path:service_uuid>/delete') def delete(service_uuid: str): - pass + context_uuid = session.get('context_uuid', '-') + if context_uuid == "-": + flash("Please select a context!", "warning") + return redirect(url_for("main.home")) + + try: + request: ServiceId = ServiceId() + request.service_uuid.uuid = service_uuid + request.context_id.context_uuid.uuid = context_uuid + service_client.connect() + response = service_client.DeleteService(request) + service_client.close() + + flash('Service "{:s}" deleted successfully!'.format(service_uuid), 'success') + except Exception as e: + flash('Problem deleting service "{:s}": {:s}'.format(service_uuid, str(e.details())), 'danger') + current_app.logger.exception(e) + return redirect(url_for('service.home')) diff --git a/src/webui/service/templates/base.html b/src/webui/service/templates/base.html index d5f748eae43531bc58951aa44b24c5272d230883..a24edaa541a09c7a22f52d9bf3e705c62c6ef1c6 100644 --- a/src/webui/service/templates/base.html +++ b/src/webui/service/templates/base.html @@ -31,7 +31,7 @@ </head> <body> <div id="teraflow-branding" style="width: 260px; margin: 7px;"> - <a href="/" title="Home" rel="home" id="main-logo" class="site-logo site-logo-pages"> + <a href="{{ url_for('main.home') }}" title="Home" rel="home" id="main-logo" class="site-logo site-logo-pages"> <svg id="Capa_1" data-name="Capa 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 436.3 132.1"><defs><style>.cls-1{fill:#36a9e1;}.cls-2{fill:#1d71b8;}.cls-3{fill:none;stroke-width:2.52px;}.cls-10,.cls-3,.cls-4,.cls-5,.cls-7,.cls-8,.cls-9{stroke:#0f77b6;}.cls-3,.cls-4,.cls-8{stroke-miterlimit:10;}.cls-10,.cls-4,.cls-5,.cls-7,.cls-8,.cls-9{fill:#fff;}.cls-4{stroke-width:0.73px;}.cls-5,.cls-7{stroke-miterlimit:10;}.cls-5{stroke-width:0.75px;}.cls-6{fill:#0f77b6;}.cls-7{stroke-width:0.72px;}.cls-8{stroke-width:0.7px;}.cls-9{stroke-miterlimit:10;stroke-width:0.69px;}.cls-10{stroke-miterlimit:10;stroke-width:0.7px;}</style></defs><path class="cls-1" d="M96,57V51.3h44.1V57H121v52.3h-5.9V57Z"></path><path class="cls-1" d="M168.9,95.1l4.7,2.4a26,26,0,0,1-5.3,7.3,22.27,22.27,0,0,1-6.7,4.2,22.64,22.64,0,0,1-8.5,1.4c-7,0-12.5-2.3-16.4-6.9a23.53,23.53,0,0,1-5.9-15.6,23,23,0,0,1,5-14.5c4.2-5.4,9.9-8.1,17-8.1,7.3,0,13.2,2.8,17.5,8.3,3.1,3.9,4.7,8.8,4.7,14.7H136.4a17.48,17.48,0,0,0,4.8,12.3,15.26,15.26,0,0,0,11.4,4.8,20,20,0,0,0,6.4-1.1,19.3,19.3,0,0,0,5.3-3A33.07,33.07,0,0,0,168.9,95.1Zm0-11.6a18.66,18.66,0,0,0-3.2-7.1,15.25,15.25,0,0,0-5.6-4.3,16.87,16.87,0,0,0-7.3-1.6,16.06,16.06,0,0,0-10.9,4.1,18.15,18.15,0,0,0-5,8.9Z"></path><path class="cls-1" d="M182,66.4h5.6v6.3a20,20,0,0,1,5.3-5.5,10.67,10.67,0,0,1,5.8-1.8,9.87,9.87,0,0,1,4.9,1.5l-2.9,4.7a7.52,7.52,0,0,0-2.9-.7,8.09,8.09,0,0,0-5.3,2.3,14.64,14.64,0,0,0-3.9,7c-.7,2.4-1,7.4-1,14.8v14.5H182Z"></path><path class="cls-1" d="M246.2,66.4v42.9h-5.4V102a23.11,23.11,0,0,1-7.8,6.3,21.23,21.23,0,0,1-9.4,2.1,21,21,0,0,1-15.6-6.6,23.07,23.07,0,0,1,.1-32,21.23,21.23,0,0,1,15.7-6.6,20,20,0,0,1,17.1,8.9V66.2h5.3Zm-22.1,4.2a16.67,16.67,0,0,0-8.5,2.3,15.93,15.93,0,0,0-6.2,6.4,17.68,17.68,0,0,0-2.3,8.7,18.26,18.26,0,0,0,2.3,8.7,15.93,15.93,0,0,0,6.2,6.4,16.58,16.58,0,0,0,8.4,2.3,17.59,17.59,0,0,0,8.6-2.3,15.42,15.42,0,0,0,6.2-6.2,17.17,17.17,0,0,0,2.2-8.8,16.73,16.73,0,0,0-4.9-12.4A15.8,15.8,0,0,0,224.1,70.6Z"></path><path class="cls-2" d="M259.5,51.3h29.1V57H265.3V75.2h23.3v5.7H265.3v28.5h-5.8V51.3Z"></path><path class="cls-2" d="M296.9,49.9h5.5v59.5h-5.5Z"></path><path class="cls-2" d="M330.5,65.3a21.1,21.1,0,0,1,16.4,7.2A22.55,22.55,0,0,1,352.8,88a22.24,22.24,0,0,1-6.3,15.7c-4.2,4.5-9.5,6.7-16.1,6.7s-12-2.2-16.1-6.7A22.24,22.24,0,0,1,308,88a22.73,22.73,0,0,1,5.9-15.5A21.81,21.81,0,0,1,330.5,65.3Zm0,5.4a15.83,15.83,0,0,0-11.8,5.1,17,17,0,0,0-4.9,12.3,17.68,17.68,0,0,0,2.3,8.7,15.19,15.19,0,0,0,6.1,6.2,16.48,16.48,0,0,0,8.4,2.2A16,16,0,0,0,339,103a15.82,15.82,0,0,0,6.1-6.2,17.68,17.68,0,0,0,2.3-8.7,17.07,17.07,0,0,0-5-12.3A16.2,16.2,0,0,0,330.5,70.7Z"></path><path class="cls-2" d="M351.2,66.4h5.7L370,97.6l13.7-31.1h1l13.8,31.1,13.4-31.1h5.7L399,109.3h-1L384.3,78.6l-13.7,30.7h-1Z"></path><polyline class="cls-3" points="51 105 51 41.2 27 41.2"></polyline><polyline class="cls-3" points="38.1 33.8 56.4 33.8 56.4 93"></polyline><polyline class="cls-3" points="79.9 33.8 61.5 33.8 61.5 79.2"></polyline><polyline class="cls-3" points="90.7 41.2 66.7 41.2 66.7 105"></polyline><line class="cls-3" x1="83.1" y1="62.6" x2="66.7" y2="62.6"></line><circle class="cls-4" cx="27" cy="41.2" r="5.3"></circle><path class="cls-1" d="M23.3,41.2a3.8,3.8,0,1,0,3.8-3.8A3.8,3.8,0,0,0,23.3,41.2Z"></path><circle class="cls-5" cx="51" cy="105" r="5.4"></circle><path class="cls-1" d="M47.3,105a3.8,3.8,0,1,0,3.8-3.8A3.8,3.8,0,0,0,47.3,105Z"></path><circle class="cls-6" cx="56.36" cy="93.02" r="3.4"></circle><circle class="cls-6" cx="61.5" cy="79.2" r="2.8"></circle><circle class="cls-7" cx="66.7" cy="105.01" r="5.3"></circle><path class="cls-1" d="M63,105a3.8,3.8,0,1,0,3.8-3.8A3.8,3.8,0,0,0,63,105Z"></path><circle class="cls-8" cx="90.7" cy="41.2" r="5.1"></circle><path class="cls-1" d="M87,41.2a3.8,3.8,0,1,0,3.8-3.8A3.8,3.8,0,0,0,87,41.2Z"></path><circle class="cls-8" cx="84.7" cy="62.6" r="5.1"></circle><path class="cls-1" d="M81,62.6a3.8,3.8,0,1,0,3.8-3.8A3.8,3.8,0,0,0,81,62.6Z"></path><line class="cls-3" x1="34.8" y1="62.6" x2="51.1" y2="62.6"></line><circle class="cls-8" cx="33.1" cy="62.6" r="5.1"></circle><path class="cls-1" d="M36.9,62.6a3.8,3.8,0,1,1-3.8-3.8A3.8,3.8,0,0,1,36.9,62.6Z"></path><line class="cls-3" x1="23.7" y1="26.7" x2="94.1" y2="26.7"></line><circle class="cls-9" cx="94.09" cy="26.67" r="5"></circle><path class="cls-1" d="M90.3,26.7a3.8,3.8,0,1,0,3.8-3.8A3.8,3.8,0,0,0,90.3,26.7Z"></path><circle class="cls-6" cx="78" cy="33.8" r="3.8"></circle><circle class="cls-6" cx="40" cy="33.8" r="3.8"></circle><circle class="cls-10" cx="23.71" cy="26.71" r="5.1"></circle><path class="cls-1" d="M20,26.7a3.8,3.8,0,1,0,3.8-3.8A3.8,3.8,0,0,0,20,26.7Z"></path></svg> </a> </div> diff --git a/src/webui/service/templates/device/detail.html b/src/webui/service/templates/device/detail.html index 143bbeed70b545f6d1e123efe5f8559a3cc44355..f27ac554b1c975039c2cb481c92debf47ba1591f 100644 --- a/src/webui/service/templates/device/detail.html +++ b/src/webui/service/templates/device/detail.html @@ -21,7 +21,7 @@ <div class="row mb-3"> <div class="col-sm-3"> - <button type="button" class="btn btn-success" onclick="window.location.href = '/device/'"> + <button type="button" class="btn btn-success" onclick="window.location.href='{{ url_for('device.home') }}'"> <i class="bi bi-box-arrow-in-left"></i> Back to device list </button> diff --git a/src/webui/service/static/site.js b/src/webui/service/templates/js/site.js similarity index 100% rename from src/webui/service/static/site.js rename to src/webui/service/templates/js/site.js diff --git a/src/webui/service/static/topology.js b/src/webui/service/templates/js/topology.js similarity index 96% rename from src/webui/service/static/topology.js rename to src/webui/service/templates/js/topology.js index dd58388cd2b7253f328b2ba7f38e007cdcc1007f..05216fb98808d5b574d613344c63a7e19cb2c472 100644 --- a/src/webui/service/static/topology.js +++ b/src/webui/service/templates/js/topology.js @@ -51,7 +51,7 @@ forceProperties = { var simulation = d3.forceSimulation(); // load the data -d3.json('/topology', function(data) { +d3.json("{{ url_for('main.topology') }}", function(data) { // set the data and properties of link lines and node circles link = svg.append("g").attr("class", "links").style('stroke', '#aaa') .selectAll("line") @@ -63,7 +63,9 @@ d3.json('/topology', function(data) { .data(data.devices) .enter() .append("image") - .attr('xlink:href', function(d) {return '/static/topology_icons/' + d.type + '.png';}) + .attr('xlink:href', function(d) { + return "{{ url_for('static', filename='/topology_icons/') }}" + d.type + ".png"; + }) .attr('width', icon_width) .attr('height', icon_height) .call(d3.drag().on("start", dragstarted).on("drag", dragged).on("end", dragended)); diff --git a/src/webui/service/templates/main/home.html b/src/webui/service/templates/main/home.html index 2134a3a87abde0d8c6af69dbc136819a4fbbf1c1..3cc9fbcffce6cfbb6ebb40dec9d3359f59df5a15 100644 --- a/src/webui/service/templates/main/home.html +++ b/src/webui/service/templates/main/home.html @@ -79,6 +79,6 @@ <script src="https://d3js.org/d3.v4.min.js"></script> <div id="topology"></div> - <script src="{{ url_for('static', filename='topology.js') }}"></script> + <script src="{{ url_for('js.topology_js') }}"></script> {% endblock %} diff --git a/src/webui/service/templates/service/detail.html b/src/webui/service/templates/service/detail.html index 77988c74c1f004fe872961ac50aabe9cede8dc65..b7c210c3f3f9c7e3bf5a9b6311e0503d2e1d40e9 100644 --- a/src/webui/service/templates/service/detail.html +++ b/src/webui/service/templates/service/detail.html @@ -21,7 +21,7 @@ <div class="row mb-3"> <div class="col-sm-3"> - <button type="button" class="btn btn-success" onclick="window.location.href = '/service/'"> + <button type="button" class="btn btn-success" onclick="window.location.href='{{ url_for('service.home') }}'"> <i class="bi bi-box-arrow-in-left"></i> Back to service list </button>